1#ifndef MaximumLikelihoodWFunctions_h
2#define MaximumLikelihoodWFunctions_h
106 void setModel(Model modelSelection);
130 QDataStream &
write(QDataStream &stream)
const;
131 QDataStream &
read(QDataStream &stream);
134 double weightScaler(
double residualZScore);
137 double huber(
double residualZScore);
138 double huberModified(
double residualZScore);
139 double welsch(
double residualZScore);
140 double chen(
double residualZScore);
143 double m_tweakingConstant;
153 QDataStream &
operator<<(QDataStream &stream,
const MaximumLikelihoodWFunctions &mlwf);
154 QDataStream &
operator>>(QDataStream &stream, MaximumLikelihoodWFunctions &mlwf);
Class provides maximum likelihood estimation functions for robust parameter estimation,...
Definition MaximumLikelihoodWFunctions.h:49
MaximumLikelihoodWFunctions()
Sets up a maximumlikelihood estimation function with Huber model and default tweaking constant.
Definition MaximumLikelihoodWFunctions.cpp:25
static QString modelToString(Model model)
Static method to return a string represtentation for a given MaximumLikelihoodWFunctions::Model enum.
Definition MaximumLikelihoodWFunctions.cpp:355
MaximumLikelihoodWFunctions & operator=(const MaximumLikelihoodWFunctions &other)
Definition MaximumLikelihoodWFunctions.cpp:73
void setModel(Model modelSelection)
Allows the maximum likelihood model to be changed together and the default tweaking constant to be se...
Definition MaximumLikelihoodWFunctions.cpp:87
Model model() const
Accessor method to return the MaximumLikelihoodWFunctions::Model enumeration.
Definition MaximumLikelihoodWFunctions.cpp:413
QString weightedResidualCutoff()
Method to return a string represtentation of the weighted residual cutoff (if it exists) for the Maxi...
Definition MaximumLikelihoodWFunctions.cpp:399
Model
The supported maximum likelihood estimation models.
Definition MaximumLikelihoodWFunctions.h:56
@ Welsch
The Welsch method aggresively discounts measures with large resiudals.
Definition MaximumLikelihoodWFunctions.h:84
@ Chen
The Chen method was found in "Robust Regression with Projection Based M-estimators" Chen,...
Definition MaximumLikelihoodWFunctions.h:94
@ HuberModified
A modification to Huber's method propsed by William J.J.
Definition MaximumLikelihoodWFunctions.h:73
@ Huber
According to Zhang (Parameter Estimation: A Tutorial with application to conic fitting) "[Huber's] es...
Definition MaximumLikelihoodWFunctions.h:65
static MaximumLikelihoodWFunctions::Model stringToModel(QString modelName)
Definition MaximumLikelihoodWFunctions.cpp:367
double tweakingConstantQuantile()
Suggest a quantile of the probility distribution of the residuals to use as the tweaking constants ba...
Definition MaximumLikelihoodWFunctions.cpp:324
void setTweakingConstantDefault()
Sets default tweaking constants based on the maximum likelihood estimation model being used.
Definition MaximumLikelihoodWFunctions.cpp:98
double sqrtWeightScaler(double residualZScore)
This provides the scaler to the sqrt of the weight, which is very useful for building normal equation...
Definition MaximumLikelihoodWFunctions.cpp:217
void setTweakingConstant(double tweakingConstant)
Allows the tweaking constant to be changed without changing the maximum likelihood function.
Definition MaximumLikelihoodWFunctions.cpp:156
QDataStream & read(QDataStream &stream)
Definition MaximumLikelihoodWFunctions.cpp:427
~MaximumLikelihoodWFunctions()
Definition MaximumLikelihoodWFunctions.cpp:69
double tweakingConstant() const
Returns the current tweaking constant.
Definition MaximumLikelihoodWFunctions.cpp:170
QDataStream & write(QDataStream &stream) const
Definition MaximumLikelihoodWFunctions.cpp:419
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16
std::istream & operator>>(std::istream &is, CSVReader &csv)
Input read operator for input stream sources.
Definition CSVReader.cpp:447
QDebug operator<<(QDebug debug, const Hillshade &hillshade)
Print this class out to a QDebug object.
Definition Hillshade.cpp:313