public class ClusterOperations
extends java.lang.Object
Modifier and Type  Field and Description 

static int 
HNC 
static int 
NONE 
static int 
PY 
Constructor and Description 

ClusterOperations() 
Modifier and Type  Method and Description 

static void 
addEquivalents(java.util.ArrayList<ClusterDiagram> list)
Replaces all isomorphic clusters in the given list by a single cluster
with weight given by their sum.

static ClusterDiagram[] 
convolution(ClusterDiagram[] set1,
ClusterDiagram[] set2)
Returns an array of clusters formed from taking the convolution of each of the diagrams
of the first set with each of the diagrams of the second set.

static ClusterDiagram 
convolution(ClusterDiagram cluster1,
ClusterDiagram cluster2)
Returns a new cluster that is a convolution of the given cluster, which is obtained by joining a root point
from each diagram and turning it into a field point.

static ClusterDiagram[] 
difference(ClusterDiagram[] set1,
ClusterDiagram[] set2)
Generates the set of diagrams obtained by subtracting the second set from the first set.

int 
getApproximation() 
ClusterDiagram[] 
getB(int n) 
ClusterDiagram[] 
getC(int n) 
ClusterDiagram[] 
getEta(int n)
Returns all diagrams of order n in the expansion for the indirect correlation function eta(r) = h(r)  c(r),
in the presence of any approximations currently in effect.

ClusterDiagram[] 
getH(int n)
Returns all diagrams of order n in the expansion for the total correlation function h(r), in the presence
of any approximations currently in effect.

ClusterDiagram[] 
getW(int n)
Returns all diagrams of order n in the sum [eta(r) + b(r)] (i.e., the sum of the indirect correlation
function and the bridge function).

static ClusterDiagram[] 
integrate(ClusterDiagram[] clusters)
Replaces each cluster in the given array with another having the same
topology, but with the highestindex root point converted into a field
point.

static void 
main(java.lang.String[] args) 
static ClusterDiagram[] 
makeReeHoover(ClusterDiagram cluster)
Creates a set of ReeHoover clusters from the given cluster.

static ClusterDiagram[] 
makeReeHoover(ClusterDiagram[] clusters) 
static ClusterDiagram 
product(ClusterDiagram[] clusters)
Returns the product of all the given clusters.

static ClusterDiagram[] 
product(ClusterDiagram[] set1,
ClusterDiagram[] set2)
Returns an array of clusters formed from taking the product of each of the diagrams
of the first set with each of the diagrams of the second set.

static ClusterDiagram 
product(ClusterDiagram cluster1,
ClusterDiagram cluster2)
Returns a new cluster that is the product of the given clusters.

static void 
reduce(java.util.ArrayList<ClusterDiagram> list)
Sorts cluster diagrams (but # of connections) and combines any diagrams
that are identical, resulting in a diagram with a weight equal to the
sum of the original weights.

void 
setApproximation(int approximation) 
static void 
sortConnections(ClusterDiagram cluster) 
static void 
sortDiagrams(ClusterDiagram[] diagrams)
Sorts diagrams in order from most bonds to fewest bonds

static ClusterDiagram[] 
sum(ClusterDiagram[] set1,
ClusterDiagram[] set2)
Generates the set of diagrams obtained by adding the second set to the first set.

static java.util.ArrayList<ClusterDiagram> 
toE(ClusterDiagram f)
Returns an array of cluster diagrams with all ebonds representing
the same sum of diagrams as the given fbond cluster.

static ClusterDiagram[] 
toE(ClusterDiagram[] f)
Returns an array of cluster diagrams with all ebonds representing
the same sum of diagrams as the given fbond clusters.

public static final int NONE
public static final int PY
public static final int HNC
public static void sortDiagrams(ClusterDiagram[] diagrams)
public static void sortConnections(ClusterDiagram cluster)
public static ClusterDiagram product(ClusterDiagram cluster1, ClusterDiagram cluster2)
public static ClusterDiagram product(ClusterDiagram[] clusters)
public static ClusterDiagram[] product(ClusterDiagram[] set1, ClusterDiagram[] set2)
public static ClusterDiagram[] integrate(ClusterDiagram[] clusters)
java.lang.IllegalArgumentException
 if any input cluster has no root pointspublic static void addEquivalents(java.util.ArrayList<ClusterDiagram> list)
public static void reduce(java.util.ArrayList<ClusterDiagram> list)
public static ClusterDiagram convolution(ClusterDiagram cluster1, ClusterDiagram cluster2)
public static ClusterDiagram[] difference(ClusterDiagram[] set1, ClusterDiagram[] set2)
public static ClusterDiagram[] sum(ClusterDiagram[] set1, ClusterDiagram[] set2)
public static ClusterDiagram[] convolution(ClusterDiagram[] set1, ClusterDiagram[] set2)
public static ClusterDiagram[] makeReeHoover(ClusterDiagram cluster)
public static ClusterDiagram[] makeReeHoover(ClusterDiagram[] clusters)
public void setApproximation(int approximation)
public int getApproximation()
public ClusterDiagram[] getH(int n)
public ClusterDiagram[] getC(int n)
public ClusterDiagram[] getB(int n)
public ClusterDiagram[] getEta(int n)
public ClusterDiagram[] getW(int n)
public static java.util.ArrayList<ClusterDiagram> toE(ClusterDiagram f)
public static ClusterDiagram[] toE(ClusterDiagram[] f)
public static void main(java.lang.String[] args)