Package ffx.numerics.estimator
Interface BootstrappableEstimator
- All Superinterfaces:
StatisticalEstimator
- All Known Implementing Classes:
BennettAcceptanceRatio
,MultistateBennettAcceptanceRatio
,Zwanzig
The BootstrappableEstimator interface describes a StatisticalEstimator which can use bootstrap
sampling as an additional method of calculating free energy and uncertainty. These will generally
perform non-bootstrap estimation on construction, with estimateDG(true) called to reset the dG and
uncertainty estimates using bootstrapping.
- Since:
- 1.0
- Author:
- Michael J. Schnieders, Jacob M. Litman
-
Method Summary
Modifier and TypeMethodDescriptionReturn a copy of this Estimator.void
Re-calculates free energy and enthalpy without bootstrapping.void
estimateDG
(boolean randomSamples) Re-calculates free energy and enthalpy.default double
sumBootstrapEnthalpyUncertainty
(double[] enthalpyVariances) Obtains bootstrap enthalpy uncertainty.default double
sumBootstrapResults
(double[] freeEnergyDifferences) Obtains bootstrap free energy.default double
sumBootstrapUncertainty
(double[] variances) Obtains bootstrap uncertainty.default double
sumEnthalpyBootstrapResults
(double[] totalEnthalpy) Obtains bootstrap enthalpy.Methods inherited from interface ffx.numerics.estimator.StatisticalEstimator
getBinEnergies, getBinEnthalpies, getBinUncertainties, getFreeEnergy, getUncertainty, numberOfBins
-
Method Details
-
copyEstimator
BootstrappableEstimator copyEstimator()Return a copy of this Estimator. Each implementation should specify its own type as the return type. Intended to make parallelization of bootstrapping easy.- Returns:
- A copy of this Estimator.
-
estimateDG
void estimateDG(boolean randomSamples) Re-calculates free energy and enthalpy.- Parameters:
randomSamples
- Whether to draw random samples with replacement (one bootstrap trial).
-
estimateDG
void estimateDG()Re-calculates free energy and enthalpy without bootstrapping. -
sumBootstrapResults
default double sumBootstrapResults(double[] freeEnergyDifferences) Obtains bootstrap free energy. Default implementation sums by-bin free energies.May be over-ridden by non-sequential estimators like MBAR.
- Parameters:
freeEnergyDifferences
- By-bin bootstrap results.- Returns:
- Overall free energy change.
-
sumEnthalpyBootstrapResults
default double sumEnthalpyBootstrapResults(double[] totalEnthalpy) Obtains bootstrap enthalpy. Default implementation sums by-bin enthalpies.May be over-ridden by non-sequential estimators like MBAR.
- Parameters:
totalEnthalpy
- By-bin bootstrap results.- Returns:
- Overall enthalpy.
-
sumBootstrapUncertainty
default double sumBootstrapUncertainty(double[] variances) Obtains bootstrap uncertainty. Default implementation is square root of summed variances.May be over-ridden by non-sequential estimators like MBAR.
- Parameters:
variances
- Variance (not uncertainty) in by-bin bootstrap results.- Returns:
- Overall uncertainty.
-
sumBootstrapEnthalpyUncertainty
default double sumBootstrapEnthalpyUncertainty(double[] enthalpyVariances) Obtains bootstrap enthalpy uncertainty. Default implementation is square root of summed enthalpy variances.May be over-ridden by non-sequential estimators like MBAR.
- Parameters:
enthalpyVariances
- Variance (not uncertainty) in by-bin bootstrap results.- Returns:
- Overall enthalpy uncertainty.
-