ALPS/looper

The ALPS/looper package is one of the applications of the ALPS Project. The ALPS/looper is the successor of the Looper Library version 2, which is the Fortran 90 library for quantum Monte Carlo method. It provides multi-cluster quantum Monte Carlo algorithms for generic spin systems in the path-integral or SSE representations.

The application supports generic spin models with arbitrary spin size S on arbitrary lattices. The supported interactions are

Since it supports so-called freezing graphs, models with easy-axis (Ising-like) anisotropy can also be simulated very efficiently.

A stripped version of the ALPS/looper is distributed as a part of ALPS Applications Package. The full version of ALPS/looper library (including test suites, etc) is available from http://wistaria.comp-phys.org/alps-looper/.

Latest News

Compiling programs

Note: This section applies only for the full version of ALPS/looper.

Prerequisites

Compilation

./configure
make

In case that the ALPS Library is installed under a directory other than the default one (i.e. $HOME/ALPS), please specify its location to the configure script by --prefix option.

Running a simulation

Input parameters

In addition to the general input parameters of the ALPS scheduler library, the loop and loop_mpi applications take the following input parameters:

Name Default Value Description
LATTICE_LIBRARY $PREFIX/lib/xml/lattices.xml path to a file containing lattice descriptions
LATTICE none name of the lattice
MODEL_LIBRARY $PREFIX/lib/xml/models.xml path to a file containing model descriptions
MODEL none name of the model
REPRESENTATION path integral type of representation, either "path integral" or "SSE"
T none temperature
T_START_# undefined [optional] see Temperature Annealing.
T_DURATION_# undefined [optional] see Temperature Annealing.
SWEEPS 65536 Monte Carlo steps after thermalization
THERMALIZATION 8192 Monte Carlo steps for thermalization
USE_SITE_INDICES_AS_TYPES false if true, all sites will have distinct site types, which are identical to site indices (starting from 0).
USE_BOND_INDICES_AS_TYPES false if true, all bonds will have distinct bond types, which are identical to bond indices (starting from 0).
MEASURE[Correlations] false if true, correlation function will be calculated
MEASURE[Green Function] false if true, Green's function will be calculated
INITIAL_SITE undefined initical site from which correlation function and Green's function are measured. If not defined, correlation between all possible site pairs will be calculated
MEASURE[Local Susceptibility] false if true, local suscepbility and local magnetization will be calculated
MEASURE[Structure Factor] false if true, structure factor for all possible k-values will be calculated
DISABLE_IMPROVED_ESTIMATOR false [optional] use normal (i.e. unimproved) estimator for measurements (will be set to true automatically in the presence of longitudinal magnetic field)
FORCE_SCATTER 0 [optional] minimum probability for forward scattering graph (will be set to 0.1 automatically for classically frustrated models in order to ensure the ergodicity
LOOPER_DEBUG[MODEL OUTPUT] undefined if defined, all the coupling constants will be printed out to standard output (cout) before calculation. If the value is cerr, the output will be made for standard error (cerr).

In addition, the lattice/model descriptions can require further parameters (e.g. L or W) as specified in the lattice (model) description file.

Temperature Annealing

Some models (typically models with competing interactions) have very long equilibration time. In such cases, one might want to lower the temperature slowly during the thermalization steps. Such temperature annealing process can be specified by using the parameters T_START_# and T_DURATION_# (# = 0, 1, 2,...), where T_START_# and T_DURATION_# specify the starting temperature and the duration of the # th block, respectively.

anneal.jpg

For example the protocol shown in the above figure can be realized by specifing the following parameter set.

T_START_0 = 2.0;
T_DURATION_0 = 100;
T_START_1 = 1.5;
T_DURATION_1 = 400;
THERMALIZATION = 1000;
T = 1.2;

Note that the sum of T_DURATION_#'s must be less than or equal to THERMALIZATION.

Measurements

The following observables are measured by the loop application:

Name Description
Energy total energy
Energy Density energy per spin
Energy^2 square of total energy
Specific Heat specific heat
Stiffness stiffness constant
Magnetization total uniform magnetization
Magnetization^2 square of total uniform magnetization
Magnetization^4 4th power of total uniform magnetization
Binder Ratio of Magnetization Binder ratio of uniform magnetization
Magnetization Density uniform magnetization per spin
Magnetization Density^2 square of uniform magnetization per spin
Magnetization Density^4 4th power of uniform magnetization per spin
Susceptibility uniform susceptibility
Staggered Magnetization total staggered magnetization [1]
Staggered Magnetization^2 square of total staggered magnetization [1]
Staggered Magnetization^4 4th power of total staggered magnetization [1]
Staggered Magnetization Density staggered magnetization per spin [1]
Staggered Magnetization Density^2 square of staggered magnetization per spin [1]
Staggered Magnetization Density^4 4th power of staggered magnetization per spin [1]
Staggered Susceptibility staggered susceptibility [1]
Generalized Magnetization total generalized magnetization [2]
Generalized Magnetization^2 square of total generalized magnetization [2]
Generalized Magnetization^4 4th power of total generalized magnetization [2]
Generalized Binder Ratio of Magnetization Binder ratio of generalized magnetization [2]
Generalized Magnetization Density generalized magnetization per spin [2]
Generalized Magnetization Density^2 square of generalized magnetization per spin [2]
Generalized Magnetization Density^4 4th power of generalized magnetization per spin [2]
Generalized Susceptibility generalized susceptibility [2]
Generalized Staggered Magnetization total generalized staggered magnetization [1] [2]
Generalized Staggered Magnetization^2 square of total generalized staggered magnetization [1] [2]
Generalized Staggered Magnetization^4 4th power of total generalized staggered magnetization [1] [2]
Generalized Staggered Magnetization Density generalized staggered magnetization per spin [1] [2]
Generalized Staggered Magnetization Density^2 square of generalized staggered magnetization per spin [1] [2]
Generalized Staggered Magnetization Density^4 4th power of generalized staggered magnetization per spin [1] [2]
Generalized Staggered Susceptibility generalized staggered susceptibility [1] [2]
Spin Correlations correlation functions [3]
Staggered Spin Correlations staggered correlation functions [1] [3]
Generalized Spin Correlations generalized correlation functions [2] [3]
Generalized Staggered Spin Correlations generalized staggered correlation function [1] [2] [3]
Green's Function Green's function [2] [4]
Structure Factor static structure factor [5]
Local Magnetization local magnetization [6]
Local Susceptibility local susceptibility (i.e., response of uniform magnetization against local magnetic field or that of local magnetization against uniform magnetic field) [6]
Staggered Local Susceptibility statggered local susceptibility (i.e., response of staggered magnetization against local magnetic field or that of local magnetization against staggered magnetic field) [1] [6]
Local Field Susceptibility local-field susceptibility (i.e., response of local magnetization against local magnetic field) [6]
[1](1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17) measured only for bipartite lattices
[2](1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18) measured only by improved estimator
[3](1, 2, 3, 4) set MEASURE[Correlations] to true
[4]set MEASURE[Green Function] to true
[5]set MEASURE[Structure Factor] to true
[6](1, 2, 3, 4) set MEASURE[Local Susceptiblity] to true

A few remarks concerning the generalized susceptibilities: The general idea is that the uniform generalized susceptibility is the susceptibility for the magnetic order supposed to be stronger. The staggered generalized susceptibility is the staggered susceptibility of this specific order. To be more precise, we have the following correspondance:

Model Generalized Susceptibility Generalized Staggered Susceptibility
Ferromagnetic model with Ising anisotropy (in the Z axis) uniform Z-Z susceptibility staggered Z-Z susceptibility<br>
Ferromagnetic model (Heisenberg point) uniform Z-Z (or X-X) susceptibility staggered Z-Z (or X-X) susceptibility
Ferromagnetic model with XY anisotropy (in the XY plane) uniform X-X susceptibility staggered X-X susceptibility
Antiferromagnetic model with XY anisotropy (in the XY plane) staggered X-X susceptibility uniform X-X susceptibility
Antiferromagnetic model (Heisenberg point) staggered Z-Z (or X-X) susceptibility uniform Z-Z (or X-X) susceptibility
Antiferromagnetic model with Ising anisotropy (in the Z axis) staggered Z-Z susceptibility uniform Z-Z susceptibility

Same considerations apply for the uniform and staggered magnetization to the square.

License

The license allows the use of the applications for non-commercial scientific use provided that the use of the ALPS/looper Library and the ALPS Libraries is acknowledged, and the papers listed below are referenced in any scientific publication. For detail please see the ALPS Applications Licence.

Acknowledgement

I wish to thank M. Troyer and F. Alet for many useful comments and suggestions.

Questions and request for support

can be addressed to Synge Todo <wistaria@comp-phys.org>.

References


Copyright (c) 1997-2007 by Synge Todo <wistaria@comp-phys.org>