8 #ifndef IMPSAXS_FIT_PARAMETERS_H
9 #define IMPSAXS_FIT_PARAMETERS_H
10 #include <IMP/saxs/saxs_config.h>
13 IMPSAXS_BEGIN_NAMESPACE
15 class IMPSAXSEXPORT FitParameters {
18 chi_(0.0), c1_(0.0), c2_(0.0), c_(0.0), o_(0.0), default_chi_(0.0) {}
19 FitParameters(
float chi,
float c1,
float c2,
float c,
float o):
20 chi_(chi), c1_(c1), c2_(c2), c_(c), o_(o), default_chi_(0.0) {}
21 FitParameters(
float chi,
float c1,
float c2):
22 chi_(chi), c1_(c1), c2_(c2), c_(0.0), o_(0.0), default_chi_(0.0) {}
24 float get_chi()
const {
return chi_; }
25 float get_c1()
const {
return c1_; }
26 float get_c2()
const {
return c2_; }
27 float get_scale()
const {
return c_; }
28 float get_offset()
const {
return o_; }
29 float get_default_chi()
const {
return default_chi_; }
30 std::string get_pdb_file_name()
const {
return pdb_file_name_; }
31 std::string get_profile_file_name()
const {
return profile_file_name_; }
32 int get_mol_index()
const {
return mol_index_; }
34 void set_chi(
float chi) { chi_ = chi; }
35 void set_default_chi(
float chi) { default_chi_ = chi; }
36 void set_profile_file_name(std::string file_name) {
37 profile_file_name_ = file_name;
39 void set_pdb_file_name(std::string file_name) { pdb_file_name_ = file_name; }
40 void set_mol_index(
int index) { mol_index_ = index; }
42 void show(std::ostream& s)
const {
43 s <<
"Chi = " << chi_ <<
" c1 = " << c1_ <<
" c2 = " << c2_
44 <<
" default chi = " << default_chi_ << std::endl;
47 struct compare_fit_parameters {
48 bool operator()(
const FitParameters& fp1,
const FitParameters& fp2) {
49 return fp1.get_chi() < fp2.get_chi();
61 std::string profile_file_name_;
62 std::string pdb_file_name_;
void show(Hierarchy h, std::ostream &out=std::cout)
Print out a molecular hierarchy.