IMP
2.3.1
The Integrative Modeling Platform
IMP Mainpage
Modules
Applications
Related Pages
Groups
Classes
Files
Examples
Indexes
File List
File Members
IMP
Modules
Applications
All IMP Applications
Argument Index
Class Examples
Factory Index
Function Examples
Design example
Developer Guide
Installation
Introduction
Publications
ChangeLog
Tools
Dependencies
PMI changelog
Deprecated List
Groups
Classes
Files
File List
File Members
Examples
Indexes
ChiFreeScore.h
Go to the documentation of this file.
1
/**
2
* \file IMP/saxs/ChiFreeScore.h \brief Chi free score implementation
3
*
4
* Copyright 2007-2014 IMP Inventors. All rights reserved.
5
* TODO: add reference
6
*/
7
8
#ifndef IMPSAXS_CHI_FREE_SCORE_H
9
#define IMPSAXS_CHI_FREE_SCORE_H
10
11
#include <IMP/saxs/saxs_config.h>
12
#include "
Profile.h
"
13
14
IMPSAXS_BEGIN_NAMESPACE
15
/**
16
Implementation of chi free score
17
Accurate assessment of mass, models and resolution by small-angle scattering.
18
Rambo RP, Tainer JA. Nature. 2013
19
*/
20
class
IMPSAXSEXPORT
ChiFreeScore
{
21
public
:
22
ChiFreeScore
(
unsigned
int
ns,
unsigned
int
k) : ns_(ns), K_(k) {
23
if
(K_ % 2 == 0) K_++;
// make sure it is odd for median
24
last_scale_updated_ =
false
;
25
}
26
27
Float
compute_score(
const
Profile
* exp_profile,
const
Profile
* model_profile,
28
bool
use_offset =
false
)
const
;
29
30
Float
compute_scale_factor(
const
Profile
* exp_profile,
31
const
Profile
* model_profile,
32
Float
offset = 0.0)
const
;
33
34
Float
compute_offset(
const
Profile
* exp_profile,
35
const
Profile
* model_profile)
const
;
36
37
private
:
38
unsigned
int
ns_;
// number of Shannon channels
39
unsigned
int
K_;
40
Float
last_scale_;
41
bool
last_scale_updated_;
42
};
43
44
IMPSAXS_END_NAMESPACE
45
46
#endif
/* IMPSAXS_CHI_FREE_SCORE_H */
IMP::saxs::Profile
Definition:
Profile.h:31
IMP::saxs::ChiFreeScore
Definition:
ChiFreeScore.h:20
IMP::Float
double Float
Basic floating-point value (could be float, double...)
Definition:
types.h:20
Profile.h
A class for profile storing and computation.