LSST Applications  21.0.0-147-g0e635eb1+1acddb5be5,22.0.0+052faf71bd,22.0.0+1ea9a8b2b2,22.0.0+6312710a6c,22.0.0+729191ecac,22.0.0+7589c3a021,22.0.0+9f079a9461,22.0.1-1-g7d6de66+b8044ec9de,22.0.1-1-g87000a6+536b1ee016,22.0.1-1-g8e32f31+6312710a6c,22.0.1-10-gd060f87+016f7cdc03,22.0.1-12-g9c3108e+df145f6f68,22.0.1-16-g314fa6d+c825727ab8,22.0.1-19-g93a5c75+d23f2fb6d8,22.0.1-19-gb93eaa13+aab3ef7709,22.0.1-2-g8ef0a89+b8044ec9de,22.0.1-2-g92698f7+9f079a9461,22.0.1-2-ga9b0f51+052faf71bd,22.0.1-2-gac51dbf+052faf71bd,22.0.1-2-gb66926d+6312710a6c,22.0.1-2-gcb770ba+09e3807989,22.0.1-20-g32debb5+b8044ec9de,22.0.1-23-gc2439a9a+fb0756638e,22.0.1-3-g496fd5d+09117f784f,22.0.1-3-g59f966b+1e6ba2c031,22.0.1-3-g849a1b8+f8b568069f,22.0.1-3-gaaec9c0+c5c846a8b1,22.0.1-32-g5ddfab5d3+60ce4897b0,22.0.1-4-g037fbe1+64e601228d,22.0.1-4-g8623105+b8044ec9de,22.0.1-5-g096abc9+d18c45d440,22.0.1-5-g15c806e+57f5c03693,22.0.1-7-gba73697+57f5c03693,master-g6e05de7fdc+c1283a92b8,master-g72cdda8301+729191ecac,w.2021.39
LSST Data Management Base Package
Namespaces | Classes | Typedefs | Functions
lsst::meas::modelfit Namespace Reference

Namespaces

 cmodel
 
 common
 
 detail
 
 display
 
 optimizer
 
 pixelFitRegion
 
 priors
 
 psf
 
 version
 

Classes

class  ImportanceSamplerControl
 Control object for one iteration of adaptive importance sampling. More...
 
class  AdaptiveImportanceSampler
 Sampler class that performs Monte Carlo sampling, while iteratively updating the analytic distribution from which points are drawn. More...
 
struct  CModelStageControl
 Nested control object for CModel that configures one of the three ("initial", "exp", "dev") nonlinear fitting stages. More...
 
struct  CModelControl
 The main control object for CModel, containing parameters for the final linear fit and aggregating the other control objects. More...
 
struct  CModelStageResult
 Result object for a single nonlinear fitting stage of the CModel algorithm. More...
 
struct  CModelResult
 Master result object for CModel, containing results for the final linear fit and three nested CModelStageResult objects for the results of the previous stages. More...
 
class  CModelAlgorithm
 Main public interface class for CModel algorithm. More...
 
class  DoubleShapeletPsfApproxControl
 Control object used to configure a 2-shapelet fit to a PSF model; see DoubleShapeletPsfApproxAlgorithm. More...
 
class  DoubleShapeletPsfApproxAlgorithm
 An algorithm that fits a 2-component shapelet approximation to the PSF model. More...
 
class  GeneralPsfFitterComponentControl
 Control object used to define one piece of multishapelet fit to a PSF model; see GeneralPsfFitterControl. More...
 
class  GeneralPsfFitterControl
 Control object used to configure a multishapelet fit to a PSF model; see GeneralPsfFitter. More...
 
class  GeneralPsfFitter
 Class for fitting multishapelet models to PSF images. More...
 
class  GeneralPsfFitterAlgorithm
 
class  MultiShapeletPsfLikelihood
 Likelihood object used to fit multishapelet models to PSF model images; mostly for internal use by GeneralPsfFitter. More...
 
class  Likelihood
 Base class for optimizer/sampler likelihood functions that compute likelihood at a point. More...
 
class  MixtureComponent
 A weighted Student's T or Gaussian distribution used as a component in a Mixture. More...
 
class  MixtureUpdateRestriction
 Helper class used to define restrictions to the form of the component parameters in Mixture::updateEM. More...
 
class  Mixture
 
class  MixturePrior
 A prior that's flat in amplitude parameters, and uses a Mixture for nonlinear parameters. More...
 
class  Model
 Abstract base class and concrete factories that define multi-shapelet galaxy models. More...
 
class  MultiModel
 A concrete Model class that simply concatenates several other Models. More...
 
class  OptimizerObjective
 Base class for objective functions for Optimizer. More...
 
class  OptimizerControl
 Configuration object for Optimizer. More...
 
class  OptimizerHistoryRecorder
 
class  Optimizer
 A numerical optimizer customized for least-squares problems with Bayesian priors. More...
 
struct  PixelFitRegionControl
 
class  PixelFitRegion
 
class  Prior
 Base class for Bayesian priors. More...
 
class  SamplingObjective
 
class  Sampler
 
struct  SemiEmpiricalPriorControl
 
class  SemiEmpiricalPrior
 A piecewise prior motivated by both real distributions and practical considerations. More...
 
struct  SoftenedLinearPriorControl
 
class  SoftenedLinearPrior
 A prior that's linear in radius and flat in ellipticity, with a cubic roll-off at the edges. More...
 
class  TruncatedGaussian
 Represents a multidimensional Gaussian function truncated at zero. More...
 
class  TruncatedGaussianLogEvaluator
 Helper class for evaluating the -log of a TruncatedGaussian. More...
 
class  TruncatedGaussianEvaluator
 Helper class for evaluating the -log of a TruncatedGaussian. More...
 
class  TruncatedGaussianSampler
 Helper class for drawing samples from a TruncatedGaussian. More...
 
struct  UnitSystem
 A simple struct that combines a Wcs and a PhotoCalib. More...
 
struct  LocalUnitTransform
 A local mapping between two UnitSystems. More...
 
class  UnitTransformedLikelihoodControl
 Control object used to initialize a UnitTransformedLikelihood. More...
 
class  EpochFootprint
 An image at one epoch of a galaxy, plus associated info. More...
 
class  UnitTransformedLikelihood
 A concrete Likelihood class that does not require its parameters and data to be in the same UnitSystem. More...
 

Typedefs

typedef float Pixel
 Typedefs to be used for pixel values. More...
 
typedef double Scalar
 Typedefs to be used for probability and parameter values. More...
 
typedef Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > Matrix
 
typedef Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > Vector
 
typedef afw::table::Key< ScalarScalarKey
 
typedef afw::table::Key< afw::table::Array< Scalar > > ArrayKey
 
typedef std::vector< std::shared_ptr< Model > > ModelVector
 

Functions

void solveTrustRegion (ndarray::Array< Scalar, 1, 1 > const &x, ndarray::Array< Scalar const, 2, 1 > const &F, ndarray::Array< Scalar const, 1, 1 > const &g, double r, double tolerance)
 Solve a symmetric quadratic matrix equation with a ball constraint. More...
 

Typedef Documentation

◆ ArrayKey

Definition at line 48 of file common.h.

◆ Matrix

typedef Eigen::Matrix<Scalar,Eigen::Dynamic,Eigen::Dynamic> lsst::meas::modelfit::Matrix

Definition at line 45 of file common.h.

◆ ModelVector

Definition at line 41 of file Model.h.

◆ Pixel

Typedefs to be used for pixel values.

Examples
imageStatistics.cc, maskedImage1.cc, and maskedImage2.cc.

Definition at line 37 of file common.h.

◆ Scalar

Typedefs to be used for probability and parameter values.

Definition at line 44 of file common.h.

◆ ScalarKey

Definition at line 47 of file common.h.

◆ Vector

typedef Eigen::Matrix<Scalar,Eigen::Dynamic,1> lsst::meas::modelfit::Vector

Definition at line 46 of file common.h.

Function Documentation

◆ solveTrustRegion()

void lsst::meas::modelfit::solveTrustRegion ( ndarray::Array< Scalar, 1, 1 > const &  x,
ndarray::Array< Scalar const, 2, 1 > const &  F,
ndarray::Array< Scalar const, 1, 1 > const &  g,
double  r,
double  tolerance 
)

Solve a symmetric quadratic matrix equation with a ball constraint.

This computes a near-exact solution to the "trust region subproblem" necessary in trust-region-based nonlinear optimizers:

\[ \min_x{\quad g^T x + \frac{1}{2}x^T F x}\quad\quad\quad \text{s.t.} ||x|| \le r \]

The tolerance parameter sets how close to \(r\) we require the norm of the solution to be when it lies on the constraint, as a fraction of \(r\) itself.

This implementation is based on the algorithm described in Section 4.3 of "Nonlinear Optimization" by Nocedal and Wright.