Linear model for transformations. More...
#include <OpenMS/ANALYSIS/MAPMATCHING/TransformationModelLinear.h>
Public Member Functions | |
TransformationModelLinear (const DataPoints &data, const Param ¶ms) | |
Constructor. More... | |
~TransformationModelLinear () override=default | |
Destructor. More... | |
double | evaluate (double value) const override |
Evaluates the model at the given value. More... | |
void | getParameters (double &slope, double &intercept, String &x_weight, String &y_weight, double &x_datum_min, double &x_datum_max, double &y_datum_min, double &y_datum_max) const |
Gets the "real" parameters. More... | |
void | invert () |
Computes the inverse. More... | |
const Param & | getParameters () const |
Gets the (actual) parameters. More... | |
![]() | |
TransformationModel () | |
Constructor. More... | |
TransformationModel (const TransformationModel::DataPoints &, const Param &) | |
virtual | ~TransformationModel () |
Destructor. More... | |
virtual void | weightData (DataPoints &data) |
Weight the data by the given weight function. More... | |
virtual void | unWeightData (DataPoints &data) |
Unweight the data by the given weight function. More... | |
bool | checkValidWeight (const String &weight, const std::vector< String > &valid_weights) const |
Check for a valid weighting function string. More... | |
double | checkDatumRange (const double &datum, const double &datum_min, const double &datum_max) |
Check that the datum is within the valid min and max bounds. More... | |
double | weightDatum (const double &datum, const String &weight) const |
Weight the data according to the weighting function. More... | |
double | unWeightDatum (const double &datum, const String &weight) const |
Apply the reverse of the weighting function to the data. More... | |
const Param & | getParameters () const |
Gets the (actual) parameters. More... | |
std::vector< String > | getValidXWeights () const |
Returns a list of valid x weight function strings. More... | |
std::vector< String > | getValidYWeights () const |
Returns a list of valid y weight function strings. More... | |
Static Public Member Functions | |
static void | getDefaultParameters (Param ¶ms) |
Gets the default parameters. More... | |
![]() | |
static void | getDefaultParameters (Param ¶ms) |
Gets the default parameters. More... | |
Protected Attributes | |
double | slope_ |
Parameters of the linear model. More... | |
double | intercept_ |
bool | data_given_ |
Was the model estimated from data? More... | |
bool | symmetric_ |
Use symmetric regression? More... | |
![]() | |
Param | params_ |
Parameters. More... | |
String | x_weight_ |
x weighting More... | |
double | x_datum_min_ |
double | x_datum_max_ |
String | y_weight_ |
y weighting More... | |
double | y_datum_min_ |
double | y_datum_max_ |
bool | weighting_ |
Additional Inherited Members | |
![]() | |
typedef std::vector< DataPoint > | DataPoints |
Vector of coordinate pairs. More... | |
Linear model for transformations.
The model can be inferred from data or specified using explicit parameters. If data is given, a least squares fit is used to find the model parameters (slope and intercept). Depending on parameter symmetric_regression
, a normal regression (y on x) or symmetric regression ( \( y - x \) on \( y + x \)) is performed.
Without data, the model can be specified by giving the parameters slope
, intercept
, x_weight
, y_weight
explicitly.
TransformationModelLinear | ( | const DataPoints & | data, |
const Param & | params | ||
) |
Constructor.
IllegalArgument | is thrown if neither data points nor explicit parameters (slope/intercept) are given. |
|
overridedefault |
Destructor.
|
overridevirtual |
Evaluates the model at the given value.
Reimplemented from TransformationModel.
|
static |
Gets the default parameters.
const Param& getParameters |
Gets the (actual) parameters.
void getParameters | ( | double & | slope, |
double & | intercept, | ||
String & | x_weight, | ||
String & | y_weight, | ||
double & | x_datum_min, | ||
double & | x_datum_max, | ||
double & | y_datum_min, | ||
double & | y_datum_max | ||
) | const |
Gets the "real" parameters.
void invert | ( | ) |
Computes the inverse.
DivisionByZero | is thrown if the slope is zero. |
|
protected |
Was the model estimated from data?
|
protected |
|
protected |
Parameters of the linear model.
|
protected |
Use symmetric regression?