8 #ifndef IMPISD_F_STUDENT_T_H 
    9 #define IMPISD_F_STUDENT_T_H 
   11 #include <IMP/isd/isd_config.h> 
   14 IMPISD_BEGIN_NAMESPACE
 
   63     virtual void do_update_sufficient_statistics(
Floats FXs) 
override;
 
   64     virtual void do_update_sufficient_statistics(
Floats FXs, 
Floats JXs);
 
   65     virtual Floats do_get_sufficient_statistics() 
const override;
 
   66     virtual double do_evaluate() 
const override;
 
   80               std::string name = 
"FStudentT %1%");
 
   92     FStudentT(
double sumFX, 
double sumFX2, 
unsigned N, 
double LogJX,
 
   93               double FM, 
double sigma, 
double nu,
 
   94               std::string name = 
"FStudentT %1%");
 
   98       do_update_sufficient_statistics(FXs, JXs);
 
  105     virtual double evaluate_derivative_Fx(
double Fx) 
const;
 
  114     virtual double evaluate_derivative_LogJX() 
const;
 
  117     virtual double evaluate_derivative_FM() 
const;
 
  120     virtual double evaluate_derivative_sigma() 
const;
 
  123     virtual double evaluate_derivative_nu() 
const;
 
  130     void update_cached_values() 
const;
 
  132     void set_sumFX(
double v) { sumFX_ = v; }
 
  133     void set_sumFX2(
double v) { sumFX2_ = v; }
 
  134     void set_N(
unsigned v) { N_ = v; }
 
  135     void set_LogJX(
double v) { LogJX_ = v; }
 
  136     void set_FM(
double v) { FM_ = v; }
 
  137     void set_sigma(
double v) { sigma_ = v; }
 
  138     void set_nu(
double v) { nu_ = v; }
 
  142     double get_sumFX2() { 
return sumFX2_; }
 
  143     unsigned get_N() { 
return N_; }
 
  144     double get_LogJX() { 
return LogJX_; }
 
  145     double get_FM() { 
return FM_; }
 
  146     double get_sigma() { 
return sigma_; }
 
  147     double get_nu() { 
return nu_; }
 
  152     double sumFX_, sumFX2_, LogJX_, FM_, sigma_, nu_;
 
Base class for single-variate distributions that cache sufficient statistics. 
 
Joint Student's t-distribution of Function. 
 
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object. 
 
void update_sufficient_statistics(Floats FXs, Floats JXs)
Update sufficient statistics with values and derivatives. 
 
double get_sumFX()
Get sufficient statistic for passed  values. 
 
Base class for probability distributions. 
 
#define IMP_OBJECTS(Name, PluralName)
Define the types for storing lists of object pointers.