1 #ifndef MaximumLikelihoodWFunctions_h
2 #define MaximumLikelihoodWFunctions_h
143 QDataStream &
write(QDataStream &stream)
const;
144 QDataStream &
read(QDataStream &stream);
147 double weightScaler(
double residualZScore);
150 double huber(
double residualZScore);
151 double huberModified(
double residualZScore);
152 double welsch(
double residualZScore);
153 double chen(
double residualZScore);
156 double m_tweakingConstant;
166 QDataStream &
operator<<(QDataStream &stream,
const MaximumLikelihoodWFunctions &mlwf);
167 QDataStream &
operator>>(QDataStream &stream, MaximumLikelihoodWFunctions &mlwf);
void setTweakingConstant(double tweakingConstant)
Allows the tweaking constant to be changed without changing the maximum likelihood function...
Definition: MaximumLikelihoodWFunctions.cpp:148
double tweakingConstant() const
Returns the current tweaking constant.
Definition: MaximumLikelihoodWFunctions.cpp:162
~MaximumLikelihoodWFunctions()
Definition: MaximumLikelihoodWFunctions.cpp:61
QDataStream & write(QDataStream &stream) const
Definition: MaximumLikelihoodWFunctions.cpp:412
double tweakingConstantQuantile()
Suggest a quantile of the probility distribution of the residuals to use as the tweaking constants ba...
Definition: MaximumLikelihoodWFunctions.cpp:316
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:209
QDataStream & read(QDataStream &stream)
Definition: MaximumLikelihoodWFunctions.cpp:420
According to Zhang (Parameter Estimation: A Tutorial with application to conic fitting) "[Huber's] es...
Definition: MaximumLikelihoodWFunctions.h:78
QString weightedResidualCutoff()
Method to return a string represtentation of the weighted residual cutoff (if it exists) for the Maxi...
Definition: MaximumLikelihoodWFunctions.cpp:392
Model model() const
Accessor method to return the MaximumLikelihoodWFunctions::Model enumeration.
Definition: MaximumLikelihoodWFunctions.cpp:406
Model
The supported maximum likelihood estimation models.
Definition: MaximumLikelihoodWFunctions.h:69
The Chen method was found in "Robust Regression with Projection Based M-estimators" Chen...
Definition: MaximumLikelihoodWFunctions.h:107
A modification to Huber's method propsed by William J.J.
Definition: MaximumLikelihoodWFunctions.h:86
The Welsch method aggresively discounts measures with large resiudals.
Definition: MaximumLikelihoodWFunctions.h:97
void setModel(Model modelSelection)
Allows the maximum likelihood model to be changed together and the default tweaking constant to be se...
Definition: MaximumLikelihoodWFunctions.cpp:79
MaximumLikelihoodWFunctions()
Sets up a maximumlikelihood estimation function with Huber model and default tweaking constant...
Definition: MaximumLikelihoodWFunctions.cpp:17
void setTweakingConstantDefault()
Sets default tweaking constants based on the maximum likelihood estimation model being used...
Definition: MaximumLikelihoodWFunctions.cpp:90
std::istream & operator>>(std::istream &is, CSVReader &csv)
Input read operator for input stream sources.
Definition: CSVReader.cpp:463
Class provides maximum likelihood estimation functions for robust parameter estimation, e.g.
Definition: MaximumLikelihoodWFunctions.h:62
MaximumLikelihoodWFunctions & operator=(const MaximumLikelihoodWFunctions &other)
Definition: MaximumLikelihoodWFunctions.cpp:65
static QString modelToString(Model model)
Static method to return a string represtentation for a given MaximumLikelihoodWFunctions::Model enum...
Definition: MaximumLikelihoodWFunctions.cpp:347
QDebug operator<<(QDebug debug, const Hillshade &hillshade)
Print this class out to a QDebug object.
Definition: Hillshade.cpp:308
static MaximumLikelihoodWFunctions::Model stringToModel(QString modelName)
Definition: MaximumLikelihoodWFunctions.cpp:359