LSST Applications g02d81e74bb+86cf3d8bc9,g180d380827+7a4e862ed4,g2079a07aa2+86d27d4dc4,g2305ad1205+e1ca1c66fa,g29320951ab+012e1474a1,g295015adf3+341ea1ce94,g2bbee38e9b+0e5473021a,g337abbeb29+0e5473021a,g33d1c0ed96+0e5473021a,g3a166c0a6a+0e5473021a,g3ddfee87b4+c429d67c83,g48712c4677+f88676dd22,g487adcacf7+27e1e21933,g50ff169b8f+96c6868917,g52b1c1532d+585e252eca,g591dd9f2cf+b41db86c35,g5a732f18d5+53520f316c,g64a986408d+86cf3d8bc9,g858d7b2824+86cf3d8bc9,g8a8a8dda67+585e252eca,g99cad8db69+84912a7fdc,g9ddcbc5298+9a081db1e4,ga1e77700b3+15fc3df1f7,ga8c6da7877+a2b54eae19,gb0e22166c9+60f28cb32d,gba4ed39666+c2a2e4ac27,gbb8dafda3b+6681f309db,gc120e1dc64+f0fcc2f6d8,gc28159a63d+0e5473021a,gcf0d15dbbd+c429d67c83,gdaeeff99f8+f9a426f77a,ge6526c86ff+0433e6603d,ge79ae78c31+0e5473021a,gee10cc3b42+585e252eca,gff1a9f87cc+86cf3d8bc9,w.2024.17
LSST Data Management Base Package
Loading...
Searching...
No Matches
Public Member Functions | List of all members
lsst::meas::astrom::detail::BinomialMatrix Class Reference

A class that computes binomial coefficients up to a certain power. More...

#include <polynomialUtils.h>

Public Member Functions

 BinomialMatrix (int const nMax)
 Construct an object that can compute binomial coefficients with \(n\) up to and including the given value.
 
double operator() (int n, int k) const
 Return the binomial coefficient.
 

Detailed Description

A class that computes binomial coefficients up to a certain power.

The binomial coefficient is defined as:

\[ \left(\begin{array}{ c } n k \end{array}right\) = \frac{n!}{k!(n-k)!} \]

with both \(n\) and \(k\) nonnegative integers and \(k \le n\)

This class uses recurrence relations to avoid computing factorials directly, making it both more efficient and numerically stable.

Definition at line 84 of file polynomialUtils.h.

Constructor & Destructor Documentation

◆ BinomialMatrix()

lsst::meas::astrom::detail::BinomialMatrix::BinomialMatrix ( int const nMax)
inlineexplicit

Construct an object that can compute binomial coefficients with \(n\) up to and including the given value.

Definition at line 90 of file polynomialUtils.h.

90{ extend(nMax); }

Member Function Documentation

◆ operator()()

double lsst::meas::astrom::detail::BinomialMatrix::operator() ( int n,
int k ) const
inline

Return the binomial coefficient.

No error checking is performed; the behavior of this method is is undefined if the given values do not satisfy

n <= nMax && k <= n && n >=0 && k >= 0

Definition at line 101 of file polynomialUtils.h.

101{ return getMatrix()(n, k); }

The documentation for this class was generated from the following files: