LSST Applications 27.0.0,g0265f82a02+469cd937ee,g02d81e74bb+21ad69e7e1,g1470d8bcf6+cbe83ee85a,g2079a07aa2+e67c6346a6,g212a7c68fe+04a9158687,g2305ad1205+94392ce272,g295015adf3+81dd352a9d,g2bbee38e9b+469cd937ee,g337abbeb29+469cd937ee,g3939d97d7f+72a9f7b576,g487adcacf7+71499e7cba,g50ff169b8f+5929b3527e,g52b1c1532d+a6fc98d2e7,g591dd9f2cf+df404f777f,g5a732f18d5+be83d3ecdb,g64a986408d+21ad69e7e1,g858d7b2824+21ad69e7e1,g8a8a8dda67+a6fc98d2e7,g99cad8db69+f62e5b0af5,g9ddcbc5298+d4bad12328,ga1e77700b3+9c366c4306,ga8c6da7877+71e4819109,gb0e22166c9+25ba2f69a1,gb6a65358fc+469cd937ee,gbb8dafda3b+69d3c0e320,gc07e1c2157+a98bf949bb,gc120e1dc64+615ec43309,gc28159a63d+469cd937ee,gcf0d15dbbd+72a9f7b576,gdaeeff99f8+a38ce5ea23,ge6526c86ff+3a7c1ac5f1,ge79ae78c31+469cd937ee,gee10cc3b42+a6fc98d2e7,gf1cff7945b+21ad69e7e1,gfbcc870c63+9a11dc8c8f
LSST Data Management Base Package
|
Fit an lsst::afw::math::Function1 object to a set of data points in two dimensions. More...
#include <LeastSqFitter2d.h>
Public Member Functions | |
LeastSqFitter2d (const std::vector< double > &x, const std::vector< double > &y, const std::vector< double > &z, const std::vector< double > &s, int order) | |
Fit a 2d polynomial to a set of data points z(x, y) | |
Eigen::MatrixXd | getParams () |
Build up a triangular matrix of the parameters. | |
Eigen::MatrixXd | getErrors () |
Companion function to getParams(). Returns uncertainties in the parameters as a matrix. | |
double | valueAt (double x, double y) |
Return the value of the best fit function at a given position (x,y) | |
std::vector< double > | residuals () |
Return a vector of residuals of the fit (i.e the difference between the input z values, and the value of the fitting function at that point. | |
double | getChiSq () |
Return a measure of the goodness of fit. | |
double | getReducedChiSq () |
Return a measure of the goodness of fit. | |
Fit an lsst::afw::math::Function1 object to a set of data points in two dimensions.
The class is templated over the kind of object to fit. Note that we fit the 1d object in each dimension, not the 2d one.
Input is a list of x and y ordinates for a set of points, the z coordinate, and the uncertainties, s. order is order of the polynomial to fit (e.g if the templated function is lsst::afw::math::PolynomialFunction1, then order=3 => fit a function of the form \(ax^2+bx+c\)
FittingFunc | The 1d function to fit in both dimensions. Must inherit from lsst::afw::math::Function1 |
x | Ordinate of points to fit |
y | Ordinate of points to fit |
z | Co-ordinate of pionts to fit |
s | 1 \(\sigma\) uncertainties in z |
order | Polynomial order to fit |
Definition at line 65 of file LeastSqFitter2d.h.
lsst::meas::astrom::sip::LeastSqFitter2d< FittingFunc >::LeastSqFitter2d | ( | const std::vector< double > & | x, |
const std::vector< double > & | y, | ||
const std::vector< double > & | z, | ||
const std::vector< double > & | s, | ||
int | order ) |
Fit a 2d polynomial to a set of data points z(x, y)
FittingFunc | The type of function to fit in each dimension. This function should extend the base class of lsst::afw::math::Function1. Note that this is a 1d function |
x | vector of x positions of data |
y | vector of y positions of data |
z | Value of data for a given x,y. \(z = z_i = z_i(x_i, y_i)\) |
s | Vector of measured uncertainties in the values of z |
order | Order of 2d function to fit |
Definition at line 109 of file LeastSqFitter2d.h.
double lsst::meas::astrom::sip::LeastSqFitter2d< FittingFunc >::getChiSq | ( | ) |
Return a measure of the goodness of fit.
\[ \chi^2 = \sum \left( \frac{z_i - f(x_i, y_i)}{s_i} \right)^2 \]
Definition at line 186 of file LeastSqFitter2d.h.
Eigen::MatrixXd lsst::meas::astrom::sip::LeastSqFitter2d< FittingFunc >::getErrors | ( | ) |
Companion function to getParams(). Returns uncertainties in the parameters as a matrix.
Definition at line 235 of file LeastSqFitter2d.h.
Eigen::MatrixXd lsst::meas::astrom::sip::LeastSqFitter2d< FittingFunc >::getParams | ( | ) |
Build up a triangular matrix of the parameters.
The shape of the matrix is such that the values correspond to the coefficients of the following polynomials
1 y y^2 y^3
x xy xy^2 0
x^2 x^2y 0 0
x^3 0 0 0
(order==4)
where row x column < order
Definition at line 166 of file LeastSqFitter2d.h.
double lsst::meas::astrom::sip::LeastSqFitter2d< FittingFunc >::getReducedChiSq | ( | ) |
Return a measure of the goodness of fit.
\[ \chi_r^2 = \sum \left( \frac{z_i - f(x_i, y_i)}{s} \right)^2 \div (N-p) \]
Where \( N \) is the number of data points, and \( p \) is the number of parameters in the fit
Definition at line 203 of file LeastSqFitter2d.h.
std::vector< double > lsst::meas::astrom::sip::LeastSqFitter2d< FittingFunc >::residuals | ( | ) |
Return a vector of residuals of the fit (i.e the difference between the input z values, and the value of the fitting function at that point.
Definition at line 222 of file LeastSqFitter2d.h.
double lsst::meas::astrom::sip::LeastSqFitter2d< FittingFunc >::valueAt | ( | double | x, |
double | y ) |
Return the value of the best fit function at a given position (x,y)
Definition at line 209 of file LeastSqFitter2d.h.