LSST Applications g0f08755f38+9c285cab97,g1635faa6d4+13f3999e92,g1653933729+a8ce1bb630,g1a0ca8cf93+bf6eb00ceb,g28da252d5a+0829b12dee,g29321ee8c0+5700dc9eac,g2bbee38e9b+9634bc57db,g2bc492864f+9634bc57db,g2cdde0e794+c2c89b37c4,g3156d2b45e+41e33cbcdc,g347aa1857d+9634bc57db,g35bb328faa+a8ce1bb630,g3a166c0a6a+9634bc57db,g3e281a1b8c+9f2c4e2fc3,g414038480c+077ccc18e7,g41af890bb2+fde0dd39b6,g5fbc88fb19+17cd334064,g781aacb6e4+a8ce1bb630,g80478fca09+55a9465950,g82479be7b0+d730eedb7d,g858d7b2824+9c285cab97,g9125e01d80+a8ce1bb630,g9726552aa6+10f999ec6a,ga5288a1d22+2a84bb7594,gacf8899fa4+c69c5206e8,gae0086650b+a8ce1bb630,gb58c049af0+d64f4d3760,gc28159a63d+9634bc57db,gcf0d15dbbd+4b7d09cae4,gda3e153d99+9c285cab97,gda6a2b7d83+4b7d09cae4,gdaeeff99f8+1711a396fd,ge2409df99d+5e831397f4,ge79ae78c31+9634bc57db,gf0baf85859+147a0692ba,gf3967379c6+41c94011de,gf3fb38a9a8+8f07a9901b,gfb92a5be7c+9c285cab97,w.2024.46
LSST Data Management Base Package
|
Classes | |
class | Vandermonde |
Class that computes rows of the Vandermonde matrix and related matrices; the dot product of these row vectors with the polynomial coefficient vectors evaluates the polynomial (or computes a derivative). More... | |
Functions | |
Eigen::Vector4d | solveRampPoly (double v0, double v1, double x0, double x1, double s0, double s1) |
Solve for the coefficients of a cubic polynomial p(x) that goes from p(x0)=v0 to p(x1)=v1, with p'(x0)=s0 and p'(x1)=s1. | |
double | phid (double z) |
Compute univariate normal probabilities. | |
double | bvnu (double h, double k, double rho) |
Compute bivariate normal probabilities. | |
double lsst::meas::modelfit::detail::bvnu | ( | double | h, |
double | k, | ||
double | rho ) |
Compute bivariate normal probabilities.
This function computes
\[ \frac{1}{2\pi\sqrt{1-\rho^2}}\int_h^{\infty}dx\int_k^{\infty}dy \;e^{-(x^2 - 2\rho x y + y^2)/(2(1-\rho^2))} \]
It is a reimplementation of the "bvnu" MatLab routine by Alan Genz. The original implementation can be found at http://www.math.wsu.edu/faculty/genz/homepage. It is based on the algorithm described in:
Drezner & Wesolowsky (1989), "On the computation of the bivariate normal integral", Journal of Statist. Comput. Simul. 35, pp. 101-107.
A copy of Genz's FORTRAN routine of the same is included in the tests directory, as it has been used to generate the test reference data there. It should generally not need to be compiled by users.
Most of the time, this function should be called via the methods in the TruncatedGaussian class; it is exposed publically only for testing purposes.
double lsst::meas::modelfit::detail::phid | ( | double | z | ) |
Compute univariate normal probabilities.
This function computes
\[ \frac{1}{2\pi}\int_z^{\infty}dx\;e^{-x^2/(2z^2)} \]
This is just a simple wrapper around boost::math::erfc, used to provide the particular form expected by bvnu.
Eigen::Vector4d lsst::meas::modelfit::detail::solveRampPoly | ( | double | v0, |
double | v1, | ||
double | x0, | ||
double | x1, | ||
double | s0, | ||
double | s1 ) |
Solve for the coefficients of a cubic polynomial p(x) that goes from p(x0)=v0 to p(x1)=v1, with p'(x0)=s0 and p'(x1)=s1.