Data (block) for independent scalar measurement. More...
#include <GblData.h>
Public Member Functions | |
void | addDerivatives (unsigned int iRow, const std::vector< unsigned int > &labDer, const SMatrix55 &matDer, unsigned int iOff, const TMatrixD &derLocal, const std::vector< int > &labGlobal, const TMatrixD &derGlobal, unsigned int nLocal, const TMatrixD &derTrans) |
Add derivatives from measurement. More... | |
void | addDerivatives (unsigned int iRow, const std::vector< unsigned int > &labDer, const SMatrix27 &matDer, unsigned int nLocal, const TMatrixD &derTrans) |
Add derivatives from kink. More... | |
void | addDerivatives (const std::vector< unsigned int > &index, const std::vector< double > &derivatives) |
Add derivatives from external seed. More... | |
GblData (unsigned int aLabel, double aMeas, double aPrec) | |
Create data block. More... | |
void | getAllData (double &aValue, double &aErr, std::vector< unsigned int > *&indLocal, std::vector< double > *&derLocal, std::vector< int > *&labGlobal, std::vector< double > *&derGlobal) |
Get all Data for MP-II binary record. More... | |
double | getChi2 () const |
Calculate Chi2 contribution. More... | |
void | getLocalData (double &aValue, double &aWeight, std::vector< unsigned int > *&indLocal, std::vector< double > *&derLocal) |
Get Data for local fit. More... | |
void | getResidual (double &aResidual, double &aVariance, double &aDownWeight, std::vector< unsigned int > *&indLocal, std::vector< double > *&derLocal) |
Get data for residual (and errors). More... | |
void | printData () const |
Print data block. More... | |
double | setDownWeighting (unsigned int aMethod) |
Outlier down weighting with M-estimators (by GblTrajectory::fit). More... | |
void | setPrediction (const VVector &aVector) |
Calculate prediction for data from fit (by GblTrajectory::fit). More... | |
virtual | ~GblData () |
Private Attributes | |
std::vector< double > | globalDerivatives |
Global derivatives. More... | |
std::vector< int > | globalLabels |
Labels for global derivatives. More... | |
std::vector< double > | theDerivatives |
List of derivatives for fit. More... | |
double | theDownWeight |
Down-weighting factor (0-1) More... | |
unsigned int | theLabel |
Label (of measurements point) More... | |
std::vector< unsigned int > | theParameters |
List of fit parameters (with non zero derivatives) More... | |
double | thePrecision |
Precision (1/sigma**2) More... | |
double | thePrediction |
Prediction from fit. More... | |
double | theValue |
Value (residual) More... | |
Data (block) for independent scalar measurement.
Data (block) containing value, precision and derivatives for measurements and kinks. Created from attributes of GblPoints, used to construct linear equation system for track fit.
gbl::GblData::GblData | ( | unsigned int | aLabel, |
double | aValue, | ||
double | aPrec | ||
) |
Create data block.
[in] | aLabel | Label of corresponding point |
[in] | aValue | Value of (scalar) measurement |
[in] | aPrec | Precision of (scalar) measurement |
Definition at line 19 of file GblData.cc.
|
virtual |
Definition at line 25 of file GblData.cc.
void gbl::GblData::addDerivatives | ( | unsigned int | iRow, |
const std::vector< unsigned int > & | labDer, | ||
const SMatrix55 & | matDer, | ||
unsigned int | iOff, | ||
const TMatrixD & | derLocal, | ||
const std::vector< int > & | labGlobal, | ||
const TMatrixD & | derGlobal, | ||
unsigned int | extOff, | ||
const TMatrixD & | extDer | ||
) |
Add derivatives from measurement.
Add (non-zero) derivatives to data block. Fill list of labels of used fit parameters.
[in] | iRow | Row index (0-4) in up to 5D measurement |
[in] | labDer | Labels for derivatives |
[in] | matDer | Derivatives (matrix) 'measurement vs track fit parameters' |
[in] | iOff | Offset for row index for additional parameters |
[in] | derLocal | Derivatives (matrix) for additional local parameters |
[in] | labGlobal | Labels for additional global (MP-II) parameters |
[in] | derGlobal | Derivatives (matrix) for additional global (MP-II) parameters |
[in] | extOff | Offset for external parameters |
[in] | extDer | Derivatives for external Parameters |
Definition at line 41 of file GblData.cc.
References globalDerivatives, globalLabels, i, theDerivatives, and theParameters.
Referenced by gbl::GblTrajectory::prepare().
void gbl::GblData::addDerivatives | ( | unsigned int | iRow, |
const std::vector< unsigned int > & | labDer, | ||
const SMatrix27 & | matDer, | ||
unsigned int | extOff, | ||
const TMatrixD & | extDer | ||
) |
Add derivatives from kink.
Add (non-zero) derivatives to data block. Fill list of labels of used fit parameters.
[in] | iRow | Row index (0-1) in 2D kink |
[in] | labDer | Labels for derivatives |
[in] | matDer | Derivatives (matrix) 'kink vs track fit parameters' |
[in] | extOff | Offset for external parameters |
[in] | extDer | Derivatives for external Parameters |
Definition at line 89 of file GblData.cc.
References i, theDerivatives, and theParameters.
void gbl::GblData::addDerivatives | ( | const std::vector< unsigned int > & | index, |
const std::vector< double > & | derivatives | ||
) |
Add derivatives from external seed.
Add (non-zero) derivatives to data block. Fill list of labels of used fit parameters.
[in] | index | Labels for derivatives |
[in] | derivatives | Derivatives (vector) |
Definition at line 120 of file GblData.cc.
References i, theDerivatives, and theParameters.
void gbl::GblData::getAllData | ( | double & | aValue, |
double & | aErr, | ||
std::vector< unsigned int > *& | indLocal, | ||
std::vector< double > *& | derLocal, | ||
std::vector< int > *& | labGlobal, | ||
std::vector< double > *& | derGlobal | ||
) |
Get all Data for MP-II binary record.
[out] | aValue | Value |
[out] | aErr | Error |
[out] | indLocal | List of labels of local parameters |
[out] | derLocal | List of derivatives for local parameters |
[out] | labGlobal | List of labels of global parameters |
[out] | derGlobal | List of derivatives for global parameters |
Definition at line 220 of file GblData.cc.
References globalDerivatives, globalLabels, mathSSE::sqrt(), theDerivatives, theParameters, thePrecision, and theValue.
double gbl::GblData::getChi2 | ( | ) | const |
Definition at line 173 of file GblData.cc.
References theDownWeight, thePrecision, thePrediction, and theValue.
void gbl::GblData::getLocalData | ( | double & | aValue, |
double & | aWeight, | ||
std::vector< unsigned int > *& | indLocal, | ||
std::vector< double > *& | derLocal | ||
) |
Get Data for local fit.
[out] | aValue | Value |
[out] | aWeight | Weight |
[out] | indLocal | List of labels of used (local) fit parameters |
[out] | derLocal | List of derivatives for used (local) fit parameters |
Definition at line 202 of file GblData.cc.
References theDerivatives, theDownWeight, theParameters, thePrecision, and theValue.
void gbl::GblData::getResidual | ( | double & | aResidual, |
double & | aVariance, | ||
double & | aDownWeight, | ||
std::vector< unsigned int > *& | indLocal, | ||
std::vector< double > *& | derLocal | ||
) |
Get data for residual (and errors).
[out] | aResidual | Measurement-Prediction |
[out] | aVariance | Variance (of measurement) |
[out] | aDownWeight | Down-weighting factor |
[out] | indLocal | List of labels of used (local) fit parameters |
[out] | derLocal | List of derivatives for used (local) fit parameters |
Definition at line 239 of file GblData.cc.
References theDerivatives, theDownWeight, theParameters, thePrecision, thePrediction, and theValue.
void gbl::GblData::printData | ( | ) | const |
Print data block.
Definition at line 179 of file GblData.cc.
References gather_cfg::cout, i, theDerivatives, theLabel, theParameters, thePrecision, and theValue.
double gbl::GblData::setDownWeighting | ( | unsigned int | aMethod | ) |
Outlier down weighting with M-estimators (by GblTrajectory::fit).
[in] | aMethod | M-estimator (1: Tukey, 2:Huber, 3:Cauchy) |
Definition at line 144 of file GblData.cc.
References mathSSE::sqrt(), theDownWeight, thePrecision, thePrediction, and theValue.
void gbl::GblData::setPrediction | ( | const VVector & | aVector | ) |
Calculate prediction for data from fit (by GblTrajectory::fit).
Definition at line 132 of file GblData.cc.
References i, theDerivatives, theParameters, and thePrediction.
|
private |
Global derivatives.
Definition at line 72 of file GblData.h.
Referenced by addDerivatives(), and getAllData().
|
private |
Labels for global derivatives.
Definition at line 71 of file GblData.h.
Referenced by addDerivatives(), and getAllData().
|
private |
List of derivatives for fit.
Definition at line 70 of file GblData.h.
Referenced by addDerivatives(), getAllData(), getLocalData(), getResidual(), printData(), and setPrediction().
|
private |
Down-weighting factor (0-1)
Definition at line 67 of file GblData.h.
Referenced by getChi2(), getLocalData(), getResidual(), and setDownWeighting().
|
private |
|
private |
List of fit parameters (with non zero derivatives)
Definition at line 69 of file GblData.h.
Referenced by addDerivatives(), getAllData(), getLocalData(), getResidual(), printData(), and setPrediction().
|
private |
Precision (1/sigma**2)
Definition at line 66 of file GblData.h.
Referenced by getAllData(), getChi2(), getLocalData(), getResidual(), printData(), and setDownWeighting().
|
private |
Prediction from fit.
Definition at line 68 of file GblData.h.
Referenced by getChi2(), getResidual(), setDownWeighting(), and setPrediction().
|
private |
Value (residual)
Definition at line 65 of file GblData.h.
Referenced by getAllData(), getChi2(), getLocalData(), getResidual(), printData(), and setDownWeighting().