ClusterAbstract, ClusterAbstractMultivaluepublic class ClusterWheatleyMultibodyDerivatives extends ClusterWheatleySoftDerivatives implements ClusterAbstractMultivalue
| Modifier and Type | Class | Description |
|---|---|---|
static class |
ClusterWheatleyMultibodyDerivatives.ClusterRetrievePrimes |
ClusterWheatleySoftDerivatives.ClusterRetrievePrimesBD| Modifier and Type | Field | Description |
|---|---|---|
protected ClusterWheatleyMultibodyDerivativesBD |
clusterMultiBD |
|
protected boolean |
doMulti |
|
protected boolean |
doTotal |
|
protected MayerFunctionNonAdditive[] |
fMulti |
|
protected MayerFunctionNonAdditive |
fNonAdditive |
|
protected double[] |
fQmulti |
|
protected int[] |
moleculeIndices |
|
protected MoleculeArrayList |
molecules |
|
protected long |
MultiBDcount |
|
protected double |
multiTol |
|
protected int |
nDer |
|
protected double[] |
pairValues |
|
static boolean |
pushme |
|
static boolean |
pushmeval |
|
protected double[] |
r2 |
|
protected long |
totcount |
avgAbsCheck, avgAbsCheckBD, BDAccFrac, beta, binomial, checkFac, clusterBD, count, cPairID, debug, doCaching, f, fA, fB, fC, fQ, lastCPairID, lastValue, lastValueBD, n, nCheck, nCheckTot, random, randomJustChecking, rCut2, SoftBDcount, stepcount, timeBD, tol, value, valueBD| Constructor | Description |
|---|---|
ClusterWheatleyMultibodyDerivatives(int nPoints,
MayerFunction f,
MayerFunctionNonAdditive[] fMulti,
double multiTol,
int nDer,
boolean doTotal) |
|
ClusterWheatleyMultibodyDerivatives(int nPoints,
MayerFunction f,
MayerFunctionNonAdditive fNonAdditive,
double multiTol,
int nDer,
boolean doTotal) |
|
ClusterWheatleyMultibodyDerivatives(int nPoints,
MayerFunction f,
MayerFunctionNonAdditive fNonAdditive,
MayerFunctionNonAdditive[] fMulti,
double tol,
int nDer,
boolean doTotal) |
| Modifier and Type | Method | Description |
|---|---|---|
protected void |
calcFullFQ(BoxCluster box) |
This calculates all FQ values given that the entries for pairs have
already been populated.
|
void |
calcValue(BoxCluster box) |
Returns the cluster value for the given configuration.
|
double[] |
getAllLastValues(BoxCluster box) |
|
long |
getMultiBDcount() |
|
double |
getMultiBDfrac() |
|
long |
getMulticount() |
|
int |
getNumValues() |
|
ClusterAbstract |
makeCopy() |
Returns another instance of an identical cluster (shallow copy).
|
void |
setTemperature(double newT) |
|
void |
setTolerance(double newTol) |
pointCount, valuegetAverageCheck, getAverageCheckBD, getNumBDChecks, getNumCheckVisits, getSoftBDcount, getSoftBDfrac, getSoftcount, getTimeBD, pointCount, printCheckData, setBDAccFrac, setDoCaching, setNumBDCheckBins, setRCut, updateF, value, valueIsBDprotected final MayerFunctionNonAdditive fNonAdditive
protected final MayerFunctionNonAdditive[] fMulti
protected final int[] moleculeIndices
protected final double[] r2
protected final MoleculeArrayList molecules
protected boolean doMulti
protected ClusterWheatleyMultibodyDerivativesBD clusterMultiBD
protected double multiTol
protected final double[] fQmulti
protected final int nDer
protected final boolean doTotal
public static boolean pushme
public static boolean pushmeval
protected final double[] pairValues
protected long totcount
protected long MultiBDcount
public ClusterWheatleyMultibodyDerivatives(int nPoints,
MayerFunction f,
MayerFunctionNonAdditive[] fMulti,
double multiTol,
int nDer,
boolean doTotal)
nPoints - number of pointsf - pair Mayer functionfMulti - array of non-additive Mayer functions. fMulti[3] is the
3-body Mayer function (exp(-beta*deltaU3)-1), fMulti[4] is the
4-body Mayer function, etc. fMulti null entries will be
ignored and the array need to not be of size equal to nPoints.
If only 3-body Mayer function is available, then fMulti can be
of length 4 (0,1,2,3).public ClusterWheatleyMultibodyDerivatives(int nPoints,
MayerFunction f,
MayerFunctionNonAdditive fNonAdditive,
double multiTol,
int nDer,
boolean doTotal)
nPoints - number of pointsf - pair Mayer functionfNonAdditive - Mayer function that returns non-additive value for
any number of molecules.public ClusterWheatleyMultibodyDerivatives(int nPoints,
MayerFunction f,
MayerFunctionNonAdditive fNonAdditive,
MayerFunctionNonAdditive[] fMulti,
double tol,
int nDer,
boolean doTotal)
nPoints - number of pointsf - pair Mayer functionfNonAdditive - Mayer function that returns non-additive value for
any number of molecules.fMulti - array of non-additive Mayer functions. fMulti[3] is the
3-body Mayer function (exp(-beta*deltaU3)-1), fMulti[4] is the
4-body Mayer function, etc. fMulti null entries will be
ignored and the array need to not be of size equal to nPoints.
If only 3-body Mayer function is available, then fMulti can be
of length 4 (0,1,2,3).tol - if the magnitude of the computed cluster value is less than
the value will be recomputed using BigDecimal. Use tol=0 to
prevent BigDecimal computations.public void setTolerance(double newTol)
setTolerance in class ClusterWheatleySoftDerivativespublic ClusterAbstract makeCopy()
ClusterAbstractmakeCopy in interface ClusterAbstractmakeCopy in class ClusterWheatleySoftDerivativespublic void setTemperature(double newT)
setTemperature in interface ClusterAbstractsetTemperature in class ClusterWheatleySoftDerivativespublic void calcValue(BoxCluster box)
ClusterWheatleySoftDerivativescalcValue in class ClusterWheatleySoftDerivativesprotected void calcFullFQ(BoxCluster box)
ClusterWheatleySoftDerivativescalcFullFQ in class ClusterWheatleySoftDerivativespublic int getNumValues()
getNumValues in interface ClusterAbstractMultivaluegetNumValues in class ClusterWheatleySoftDerivativespublic double[] getAllLastValues(BoxCluster box)
getAllLastValues in interface ClusterAbstractMultivaluegetAllLastValues in class ClusterWheatleySoftDerivativespublic long getMultiBDcount()
public long getMulticount()
public double getMultiBDfrac()