#include <OpenMS/TRANSFORMATIONS/RAW2PEAK/OptimizePick.h>
Given a vector of peak shapes, this class optimizes all peak shapes parameters using a non-linear optimization. For the non-linear optimization we use the Levenberg-Marquardt algorithm provided by the gsl.
Public Types | |
typedef std::vector < DRawDataPoint< 1 > > | RawDataVector |
Raw data vector type. | |
typedef RawDataVector::iterator | RawDataPointIterator |
Raw data iterator type. | |
Public Member Functions | |
OptimizePick () | |
Constructor. | |
OptimizePick (const struct OptimizationFunctions::PenaltyFactors &penalties_, const int max_iteration_, const double eps_abs_, const double eps_rel_) | |
Constructor to set the penalty factors, the number of optimization iterations as well as the threshold for the absolute and the relative error. | |
~OptimizePick () | |
Destructor. | |
struct OptimizationFunctions::PenaltyFactors & | getPenalties () const |
Non-mutable access to the penalty factors. | |
struct OptimizationFunctions::PenaltyFactors & | getPenalties () |
Mutable access to the penalty factors. | |
void | setPenalties (const struct OptimizationFunctions::PenaltyFactors &penalties) |
Mutable access to the penalty factors. | |
UInt | getNumberIterations () const |
Non-mutable access to the number of iterations. | |
unsigned int & | getNumberIterations () |
Mutable access to the number of iterations. | |
void | setNumberIterations (const int max_iteration) |
Mutable access to the number of iterations. | |
DoubleReal | getMaxAbsError () const |
Non-mutable access to the maximum absolute error. | |
double & | getMaxAbsError () |
Mutable access to the maximum absolute error. | |
void | setMaxAbsError (double eps_abs) |
Mutable access to the maximum absolute error. | |
DoubleReal | getMaxRelError () const |
Non-mutable access to the maximum relative error. | |
double & | getMaxRelError () |
Mutable access to the maximum relative error. | |
void | setMaxRelError (double eps_rel) |
Mutable access to the maximum relative error. | |
void | optimize (std::vector< PeakShape > &peaks) |
Start the optimization of the peak shapes peaks. The original peak shapes will be subsituted by the optimized peak shapes. | |
Protected Member Functions | |
double | correlate_ (const PeakShape &peak, double left_endpoint, double right_endpoint) |
Returns the squared pearson coefficient. | |
Protected Attributes | |
struct OptimizationFunctions::PenaltyFactors | penalties_ |
Penalty factors. | |
unsigned int | max_iteration_ |
Maximum number of iterations during optimization. | |
double | eps_abs_ |
Maximum absolute and relative error used in the optimization. | |
double | eps_rel_ |
typedef std::vector<DRawDataPoint<1> > RawDataVector |
Raw data vector type.
typedef RawDataVector::iterator RawDataPointIterator |
Raw data iterator type.
OptimizePick | ( | ) | [inline] |
Constructor.
OptimizePick | ( | const struct OptimizationFunctions::PenaltyFactors & | penalties_, | |
const int | max_iteration_, | |||
const double | eps_abs_, | |||
const double | eps_rel_ | |||
) |
Constructor to set the penalty factors, the number of optimization iterations as well as the threshold for the absolute and the relative error.
~OptimizePick | ( | ) |
Destructor.
struct OptimizationFunctions::PenaltyFactors& getPenalties | ( | ) | const [inline, read] |
Non-mutable access to the penalty factors.
struct OptimizationFunctions::PenaltyFactors& getPenalties | ( | ) | [inline, read] |
Mutable access to the penalty factors.
void setPenalties | ( | const struct OptimizationFunctions::PenaltyFactors & | penalties | ) | [inline] |
Mutable access to the penalty factors.
UInt getNumberIterations | ( | ) | const [inline] |
Non-mutable access to the number of iterations.
unsigned int& getNumberIterations | ( | ) | [inline] |
Mutable access to the number of iterations.
void setNumberIterations | ( | const int | max_iteration | ) | [inline] |
Mutable access to the number of iterations.
DoubleReal getMaxAbsError | ( | ) | const [inline] |
Non-mutable access to the maximum absolute error.
double& getMaxAbsError | ( | ) | [inline] |
Mutable access to the maximum absolute error.
void setMaxAbsError | ( | double | eps_abs | ) | [inline] |
Mutable access to the maximum absolute error.
DoubleReal getMaxRelError | ( | ) | const [inline] |
Non-mutable access to the maximum relative error.
double& getMaxRelError | ( | ) | [inline] |
Mutable access to the maximum relative error.
void setMaxRelError | ( | double | eps_rel | ) | [inline] |
Mutable access to the maximum relative error.
void optimize | ( | std::vector< PeakShape > & | peaks | ) |
Start the optimization of the peak shapes peaks. The original peak shapes will be subsituted by the optimized peak shapes.
double correlate_ | ( | const PeakShape & | peak, | |
double | left_endpoint, | |||
double | right_endpoint | |||
) | [protected] |
Returns the squared pearson coefficient.
Computes the correlation of the peak and the original data given by the peak enpoints. If the value is near 1, the fitted peakshape and the raw data are expected to be very similar.
struct OptimizationFunctions::PenaltyFactors penalties_ [read, protected] |
Penalty factors.
unsigned int max_iteration_ [protected] |
Maximum number of iterations during optimization.
double eps_abs_ [protected] |
Maximum absolute and relative error used in the optimization.
double eps_rel_ [protected] |
Generated Tue Apr 1 15:36:48 2008 -- using doxygen 1.5.4 | OpenMS / TOPP 1.1 |