8 #ifndef IMPISD_GAUSSIAN_PROCESS_INTERPOLATION_RESTRAINT_H
9 #define IMPISD_GAUSSIAN_PROCESS_INTERPOLATION_RESTRAINT_H
11 #include <IMP/isd/isd_config.h>
13 #include <boost/scoped_ptr.hpp>
18 #include <IMP/algebra/eigen3/Eigen/Dense>
22 IMPISD_BEGIN_NAMESPACE
24 class GaussianProcessInterpolationScoreState;
35 void update_mean_and_covariance();
42 void create_score_state();
57 void stats()
const {
return mvn_->stats(); }
60 void set_use_cg(
bool use,
double tol) { mvn_->set_use_cg(use, tol); }
63 double get_minus_log_normalization()
const;
64 double get_minus_exponent()
const;
67 IMP_Eigen::MatrixXd get_hessian()
const;
70 double get_logdet_hessian()
const;
82 friend class GaussianProcessInterpolationScoreState;
85 #if !defined(IMP_DOXYGEN) && !defined(SWIG)
86 class IMPISDEXPORT GaussianProcessInterpolationScoreState :
public ScoreState {
91 GaussianProcessInterpolationScoreState(
92 GaussianProcessInterpolationRestraint *gpir)
94 "GaussianProcessInterpolationScoreState%1%"),
99 friend class GaussianProcessInterpolationRestraint;
Normal distribution of Function.
Class for adding derivatives from restraints to the model.
IMP::kernel::ScoreState ScoreState
A smart pointer to a ref-counted Object that is a class member.
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
void set_use_cg(bool use, double tol)
Use conjugate gradients when possible (default false)
A smart pointer to a reference counted object.
Import IMP/kernel/macros.h in the namespace.
ScoreStates maintain invariants in the Model.
Normal distribution of Function.
Abstract base class for all restraints.
gaussian process restraint
A restraint is a term in an IMP ScoringFunction.
Import IMP/kernel/ScoreState.h in the namespace.
A nullptr-initialized pointer to an IMP Object.
GaussianProcessInterpolation.
double get_probability() const
virtual ModelObjectsTemp do_get_inputs() const =0
virtual ModelObjectsTemp do_get_outputs() const =0
#define IMP_OVERRIDE
Cause a compile error if this method does not override a parent method.
Class for storing model, its restraints, constraints, and particles.