LSSTApplications
20.0.0
LSSTDataManagementBasePackage
|
Go to the documentation of this file.
25 #ifndef LSST_JOINTCAL_FITTER_BASE_H
26 #define LSST_JOINTCAL_FITTER_BASE_H
106 bool const doRankUpdate =
true,
bool const doLineSearch =
false,
222 TripletList &tripletList, Eigen::VectorXd &grad)
const = 0;
235 double _lineSearch(Eigen::VectorXd
const &delta);
239 #endif // LSST_JOINTCAL_FITTER_BASE_H
objects measured on actual images.
virtual void saveChi2Contributions(std::string const &baseName) const
Save the full chi2 term per star that was used in the minimization, for debugging.
virtual void leastSquareDerivativesReference(FittedStarList const &fittedStarList, TripletList &tripletList, Eigen::VectorXd &grad) const =0
Compute the derivatives of the reference terms.
virtual void leastSquareDerivativesMeasurement(CcdImage const &ccdImage, TripletList &tripletList, Eigen::VectorXd &grad, MeasuredStarList const *measuredStarList=nullptr) const =0
Compute the derivatives of the measured stars and model for one CcdImage.
virtual void accumulateStatImageList(CcdImageList const &ccdImageList, Chi2Accumulator &accum) const =0
Compute the chi2 (per star or total, depending on which Chi2Accumulator is used) for measurements.
MinimizeResult minimize(std::string const &whatToFit, double const nSigmaCut=0, bool const doRankUpdate=true, bool const doLineSearch=false, std::string const &dumpMatrixFile="")
Does a 1 step minimization, assuming a linear model.
FitterBase(FitterBase const &)=delete
No copy or move: there is only ever one fitter of a given type.
virtual void accumulateStatRefStars(Chi2Accumulator &accum) const =0
Compute the chi2 (per star or total, depending on which Chi2Accumulator is used) for RefStars.
Simple structure to accumulate chi2 and ndof.
std::size_t findOutliers(double nSigmaCut, MeasuredStarList &msOutliers, FittedStarList &fsOutliers) const
Find Measurements and references contributing more than a cut, computed as.
std::shared_ptr< Associations > _associations
void leastSquareDerivatives(TripletList &tripletList, Eigen::VectorXd &grad) const
Evaluates the chI^2 derivatives (Jacobian and gradient) for the current whatToFit setting.
FitterBase(std::shared_ptr< Associations > associations)
Handler of an actual image from a single CCD.
virtual void getIndicesOfMeasuredStar(MeasuredStar const &measuredStar, IndexVector &indices) const =0
Set the indices of a measured star from the full matrix, for outlier removal.
MinimizeResult
Return value of minimize()
A list of MeasuredStar. They are usually filled in Associations::createCcdImage.
A base class for image defects.
virtual void saveChi2MeasContributions(std::string const &filename) const =0
Save a CSV file containing residuals of measurement terms.
FitterBase(FitterBase &&)=delete
void outliersContributions(MeasuredStarList &msOutliers, FittedStarList &fsOutliers, TripletList &tripletList, Eigen::VectorXd &grad)
Contributions to derivatives from (presumably) outlier terms.
Chi2Statistic computeChi2() const
Returns the chi2 for the current state.
virtual void assignIndices(std::string const &whatToFit)=0
Set parameters to fit and assign indices in the big matrix.
void removeMeasOutliers(MeasuredStarList &outliers)
Remove measuredStar outliers from the fit. No Refit done.
virtual void offsetParams(Eigen::VectorXd const &delta)=0
Offset the parameters by the requested quantities.
FitterBase & operator=(FitterBase const &)=delete
A list of FittedStar s. Such a list is typically constructed by Associations.
Base class for Chi2Statistic and Chi2List, to allow addEntry inside Fitter for either class.
void removeRefOutliers(FittedStarList &outliers)
Remove refStar outliers from the fit. No Refit done.
LSST DM logging module built on log4cxx.
FitterBase & operator=(FitterBase &&)=delete
Eigen::Index _nMeasuredStars
virtual void saveChi2RefContributions(std::string const &filename) const =0
Save a CSV file containing residuals of reference terms.