IMP logo
IMP Reference Guide  2.20.2
The Integrative Modeling Platform
MultiStateModelScore.h
Go to the documentation of this file.
1 /**
2  * \file IMP/multi_state/MultiStateModelScore.h
3  * \brief base class for MultiStateModel scoring classes
4  *
5  * \authors Dina Schneidman
6  * Copyright 2007-2022 IMP Inventors. All rights reserved.
7  *
8  */
9 
10 #ifndef IMPMULTI_STATE_MULTI_STATE_MODEL_SCORE_H
11 #define IMPMULTI_STATE_MULTI_STATE_MODEL_SCORE_H
12 
13 #include <IMP/multi_state/multi_state_config.h>
16 
17 IMPMULTISTATE_BEGIN_NAMESPACE
18 
19 //! Base class for MultiStateModel scoring classes
21 public:
22  // multi_state_model score
23  virtual double get_score(const MultiStateModel& e) const = 0;
24 
25  // multi_state_model score and weights
26  virtual double get_score(const MultiStateModel& e,
27  Vector<double>& weights) const = 0;
28 
29  // multi_state_model score, weights and other fitting params
31  get_fit_parameters(MultiStateModel& e) const = 0;
32 
33  // get score and weights
34  virtual saxs::WeightedFitParameters get_fit_parameters() const = 0;
35 
36  // write fit file
37  virtual void write_fit_file(MultiStateModel& e,
39  const std::string fit_file_name) const = 0;
40 
41  // get name
42  virtual std::string get_state_name(unsigned int id) const = 0;
43 
44  // get data name
45  virtual std::string get_dataset_name() const = 0;
46 
47  virtual ~MultiStateModelScore() {}
48 };
49 
50 IMPMULTISTATE_END_NAMESPACE
51 
52 #endif /* IMPMULTI_STATE_MULTI_STATE_MODEL_SCORE_H */
Base class for MultiStateModel scoring classes.
Keep track of multiple states.
Parameters of a weighted fit, from WeightedProfileFitter.
Keep track of multiple states.