def __init__(self, predictions, measurements, uncertainties, state_assignments, prior_pops=None):
        """Note that this class state-averaged predictions.  This is in contrast to the BELT methed, which
        takes inputs for each *frame*.
        
        Notes
        -----
        prior_pops determines the hyperparameters used in the Dirichlet prior.
        Depending on your needs, there are several possibilities.  A
        vector of ones is a reasonable choice for an uninformative prior, 
        as this allows the data and likelihood to determine the value 
        of the populations.  Another choice of `prior_pops` is to input
        the observed counts from your simulations.  This centers the prior
        density maximum around the simulation results, penalizing models 
        that stray from the simulation.  Note that for simulations with 
        time correlation, you may have to scale the total number of 
        observed counts by the statistical inefficiency, so as to correct
        for correlation between counts.  
        """
        EnsembleFitter.__init__(self, predictions, measurements, uncertainties)

        self.state_assignments = state_assignments
        self.num_states = len(np.unique(self.state_assignments))

        if prior_pops is not None:
            self.prior_pops = prior_pops
        else:
            self.prior_pops = np.ones(self.num_states)

        self.initialize_variables()
    def __init__(self,
                 predictions,
                 measurements,
                 uncertainties,
                 state_assignments,
                 prior_pops=None):
        """Note that this class state-averaged predictions.  This is in contrast to the BELT methed, which
        takes inputs for each *frame*.
        
        Notes
        -----
        prior_pops determines the hyperparameters used in the Dirichlet prior.
        Depending on your needs, there are several possibilities.  A
        vector of ones is a reasonable choice for an uninformative prior, 
        as this allows the data and likelihood to determine the value 
        of the populations.  Another choice of `prior_pops` is to input
        the observed counts from your simulations.  This centers the prior
        density maximum around the simulation results, penalizing models 
        that stray from the simulation.  Note that for simulations with 
        time correlation, you may have to scale the total number of 
        observed counts by the statistical inefficiency, so as to correct
        for correlation between counts.  
        """
        EnsembleFitter.__init__(self, predictions, measurements, uncertainties)

        self.state_assignments = state_assignments
        self.num_states = len(np.unique(self.state_assignments))

        if prior_pops is not None:
            self.prior_pops = prior_pops
        else:
            self.prior_pops = np.ones(self.num_states)

        self.initialize_variables()
Beispiel #3
0
    def __init__(self, predictions, measurements, uncertainties, prior_pops=None):
        """Abstract base class for Bayesian Energy Landscape Tilting.

        Parameters
        ----------
        predictions : ndarray, shape = (num_frames, num_measurements)
            predictions[j, i] gives the ith observabled predicted at frame j
        measurements : ndarray, shape = (num_measurements)
            measurements[i] gives the ith experimental measurement
        uncertainties : ndarray, shape = (num_measurements)
            uncertainties[i] gives the uncertainty of the ith experiment
        prior_pops : ndarray, shape = (num_frames)
            Prior populations of each conformation.  If None, use uniform populations.
        """
        EnsembleFitter.__init__(self, predictions, measurements, uncertainties, prior_pops=prior_pops)
Beispiel #4
0
    def __init__(self,
                 predictions,
                 measurements,
                 uncertainties,
                 prior_pops=None):
        """Abstract base class for Bayesian Energy Landscape Tilting.

        Parameters
        ----------
        predictions : ndarray, shape = (num_frames, num_measurements)
            predictions[j, i] gives the ith observabled predicted at frame j
        measurements : ndarray, shape = (num_measurements)
            measurements[i] gives the ith experimental measurement
        uncertainties : ndarray, shape = (num_measurements)
            uncertainties[i] gives the uncertainty of the ith experiment
        prior_pops : ndarray, shape = (num_frames)
            Prior populations of each conformation.  If None, use uniform populations.
        """
        EnsembleFitter.__init__(self,
                                predictions,
                                measurements,
                                uncertainties,
                                prior_pops=prior_pops)