summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
Diffstat (limited to 'README')
-rw-r--r--README19
1 files changed, 19 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 0000000..2321cc7
--- /dev/null
+++ b/README
@@ -0,0 +1,19 @@
+
+A library for running the Wolff algorithm on arbitrary systems in arbitrary
+fields. A "spin state" and "spin symmetry transformation" type must be
+supplied to defined a system, along with a spin-spin coupling, a spin-field
+coupling, and a generator of transformations of rank two. The library then
+supplies the tools to run Wolff cluster-flip steps on the resulting (for now)
+hypercubic lattice system, with arbitrary measurements taken along the way.
+
+The core code resides in lib. lib/include/wolff.hpp is the principle
+interface, but lib/include/wolff/cluster.hpp does the heavy lifting, with
+essential data structures defined by lib/include/wolff/graph.h and
+lib/include/wolff/state.h. Skimming these files, or reviewing how they are
+used in the included examples, should help with their use. The simplest
+example is contained in examples/src/models/ising.
+
+lib/include/wolff/finite_states.h can be invoked when special objects have
+been defined to significantly speed computation for systems whose spins have
+finitely many states.
+