Cluster Expansion
Introduction Quick Start Concepts Sources Bibliography

[ Cluster | SubCluster | Edges | Lattice ]

  Cluster  
 
There are two basic cluster classes:
  • Cluster

  • This class provides undirected, not colored clusters.
  • ColoredCluster

  • This class provides undirected, colored clusters.
The definition of the underlying classes can be found in the file Cluster.h, the corresponding implementations in the file Cluster.cc.
The representation of a cluster is specified in the file ClusterRepresentation.h, the corresponding implementations can be found in the file ClusterRepresentation.cc.

 
  SubCluster  
 
To access all subclusters of a specific cluster there is an iterator defined in the class SubClusterIterator. To understand its usage look at the following example:
// define a cluster
Cluster MyCluster;
...
// define a subcluster iterator
SubClusterIterator<Cluster> SubCluster;
// assign the cluster whose subclusters are to be iterated
SubCluster.Assign(MyCluster);

// iterate all subclusters
while(SubCluster) {
  SubCluster->Dump();
  ++SubCluster;
}

The corresponding implementations can be found in the files ClusterIterator.h and ClusterIterator.cc.

 
  Edges  
 
In the same spirit there is an iterator defined to access all edges of a specific cluster. This is done in the class EdgeIterator. To understand its usage look at the following example:
// define a cluster
Cluster MyCluster;
...
// define an edge iterator
EdgeIterator Edge;
// assign the cluster whose edges are to be iterated
Edge.Assign(MyCluster);
// iterate all edges
while(Edge) {
  Edge->Dump();
  ++Edge;
}

The corresponding implementations can be found in the files ClusterIterator.h and ClusterIterator.cc.

 
  Lattice  
 
There are two basic lattice classes:
  • Lattice

  • This class provides the basic lattice properties. There are two predefined lattices, the two-dimensional quadratic and the two-dimensional triangle lattice.
    A new user defined lattice can easily be added.
  • ColoredLattice

  • This class is a derived from the above class. It adds the possibility to assign colors to the sites of the lattice.
The definition of the underlying classes is done in the files Lattice.h and Lattice.cc.

 


Simon Trebst
Last modified: Tue Aug 3 11:37:20 MET DST 1999