Interface BootstrappableEstimator

All Superinterfaces:
StatisticalEstimator
All Known Implementing Classes:
BennettAcceptanceRatio, MultistateBennettAcceptanceRatio, Zwanzig

public interface BootstrappableEstimator extends StatisticalEstimator
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 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.