The code simulates the Z_2 globally invariant Gross-Neveu model in (2+1) dimensions.
To compile the code on a local machine, execute the command
gcc -O3 *.c -o GNModel -lm
Some compilers may have troubles with the cronotime.* files. You may delete those files without problems. When you run the code, 7 parameters are needed as input parameters
- double : beta -> plaquette coupling
- double : beta_scalar -> variance of the sigma field coupling
- double : mass -> mass of the fermion field
- double : epsilon_link -> infinitesimal time step for the link HMC
- double : epsilon_sigma -> infinitesimal time step for the sigma HMC
- double : epsilon_pi -> infinitesimal time step for the pi HMC
- int : step_link -> number of steps of the HMC trajectory for the link variables
- int : step_sigma -> number of steps of the HMC trajectory for the sigma field
- int : step_pi -> number of steps of the HMC trajectory for the pi field
- int : seed -> random number seed
To run the code with
./GNModel 0.0 0.85 0.0 0.0 0.2 0.0 0 2 0 1231
We strongly suggest to run always the code with #define START_X0_NULL instead to #define START_X0_PREVIOUS to ensure detailed balance of the HMC algorithm. The lattice hamiltonian reads as follows
$$ H = \sum_{x, y} \bar{\psi}x M{x, y} \psi_y + \frac{N_f \beta_s}{4}\sum_{\widetilde{x}}\sigma^2_{\widetilde{x}}$$
where the Dirac matrix