LSSTApplications  20.0.0
LSSTDataManagementBasePackage
Public Member Functions | Protected Attributes | List of all members
lsst::meas::modelfit::TruncatedGaussianLogEvaluator Class Reference

Helper class for evaluating the -log of a TruncatedGaussian. More...

#include <TruncatedGaussian.h>

Public Member Functions

 TruncatedGaussianLogEvaluator (TruncatedGaussian const &parent)
 
template<typename Derived >
Scalar operator() (Eigen::MatrixBase< Derived > const &alpha) const
 
Scalar operator() (ndarray::Array< Scalar const, 1, 1 > const &alpha) const
 
void operator() (ndarray::Array< Scalar const, 2, 1 > const &alpha, ndarray::Array< Scalar, 1, 1 > const &output) const
 

Protected Attributes

Scalar _norm
 
Vector _mu
 
Vector _workspace
 
Matrix _rootH
 

Detailed Description

Helper class for evaluating the -log of a TruncatedGaussian.

Definition at line 245 of file TruncatedGaussian.h.

Constructor & Destructor Documentation

◆ TruncatedGaussianLogEvaluator()

lsst::meas::modelfit::TruncatedGaussianLogEvaluator::TruncatedGaussianLogEvaluator ( TruncatedGaussian const &  parent)
explicit

Member Function Documentation

◆ operator()() [1/3]

template<typename Derived >
Scalar lsst::meas::modelfit::TruncatedGaussianLogEvaluator::operator() ( Eigen::MatrixBase< Derived > const &  alpha) const
inline

Definition at line 251 of file TruncatedGaussian.h.

251  {
252  if ((alpha.array() < 0.0).any()) return std::numeric_limits<Scalar>::infinity();
253  _workspace = alpha - _mu;
254  return 0.5*(_rootH*_workspace).squaredNorm() + _norm;
255  }

◆ operator()() [2/3]

Scalar lsst::meas::modelfit::TruncatedGaussianLogEvaluator::operator() ( ndarray::Array< Scalar const, 1, 1 > const &  alpha) const

◆ operator()() [3/3]

void lsst::meas::modelfit::TruncatedGaussianLogEvaluator::operator() ( ndarray::Array< Scalar const, 2, 1 > const &  alpha,
ndarray::Array< Scalar, 1, 1 > const &  output 
) const

Member Data Documentation

◆ _mu

Vector lsst::meas::modelfit::TruncatedGaussianLogEvaluator::_mu
protected

Definition at line 266 of file TruncatedGaussian.h.

◆ _norm

Scalar lsst::meas::modelfit::TruncatedGaussianLogEvaluator::_norm
protected

Definition at line 265 of file TruncatedGaussian.h.

◆ _rootH

Matrix lsst::meas::modelfit::TruncatedGaussianLogEvaluator::_rootH
protected

Definition at line 268 of file TruncatedGaussian.h.

◆ _workspace

Vector lsst::meas::modelfit::TruncatedGaussianLogEvaluator::_workspace
mutableprotected

Definition at line 267 of file TruncatedGaussian.h.


The documentation for this class was generated from the following file:
lsst::meas::modelfit::TruncatedGaussianLogEvaluator::_workspace
Vector _workspace
Definition: TruncatedGaussian.h:267
lsst::meas::modelfit::TruncatedGaussianLogEvaluator::_norm
Scalar _norm
Definition: TruncatedGaussian.h:265
lsst::meas::modelfit::TruncatedGaussianLogEvaluator::_rootH
Matrix _rootH
Definition: TruncatedGaussian.h:268
std::numeric_limits::infinity
T infinity(T... args)
lsst::geom::any
bool any(CoordinateExpr< N > const &expr) noexcept
Return true if any elements are true.
Definition: CoordinateExpr.h:89
lsst::meas::modelfit::TruncatedGaussianLogEvaluator::_mu
Vector _mu
Definition: TruncatedGaussian.h:266