LSSTApplications  8.0.0.0+107,8.0.0.1+13,9.1+18,9.2,master-g084aeec0a4,master-g0aced2eed8+6,master-g15627eb03c,master-g28afc54ef9,master-g3391ba5ea0,master-g3d0fb8ae5f,master-g4432ae2e89+36,master-g5c3c32f3ec+17,master-g60f1e072bb+1,master-g6a3ac32d1b,master-g76a88a4307+1,master-g7bce1f4e06+57,master-g8ff4092549+31,master-g98e65bf68e,master-ga6b77976b1+53,master-gae20e2b580+3,master-gb584cd3397+53,master-gc5448b162b+1,master-gc54cf9771d,master-gc69578ece6+1,master-gcbf758c456+22,master-gcec1da163f+63,master-gcf15f11bcc,master-gd167108223,master-gf44c96c709
LSSTDataManagementBasePackage
Public Member Functions | Private Attributes | List of all members
lsst::ip::diffim::MinimizeDipoleChi2< PixelT > Class Template Reference
Inheritance diagram for lsst::ip::diffim::MinimizeDipoleChi2< PixelT >:

Public Member Functions

 MinimizeDipoleChi2 (PsfDipoleFlux const &psfDipoleFlux, afw::table::SourceRecord &source, afw::image::Exposure< PixelT > const &exposure)
 
double Up () const
 
void setErrorDef (double def)
 
int getNpar () const
 
int getMaxPix () const
 
void setMaxPix (int maxPix)
 
virtual double operator() (std::vector< double > const &params) const
 

Private Attributes

double _errorDef
 
int _nPar
 
int _maxPix
 
double _bigChi2
 
PsfDipoleFlux const & _psfDipoleFlux
 
afw::table::SourceRecord_source
 
afw::image::Exposure< PixelT >
const & 
_exposure
 

Detailed Description

template<typename PixelT>
class lsst::ip::diffim::MinimizeDipoleChi2< PixelT >

Class to minimize PsfDipoleFlux; this is the object that Minuit minimizes

Definition at line 373 of file dipoleAlgorithm.cc.

Constructor & Destructor Documentation

template<typename PixelT>
lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::MinimizeDipoleChi2 ( PsfDipoleFlux const &  psfDipoleFlux,
afw::table::SourceRecord source,
afw::image::Exposure< PixelT > const &  exposure 
)
inlineexplicit

Definition at line 375 of file dipoleAlgorithm.cc.

378  : _errorDef(1.0),
379  _nPar(6),
380  _maxPix(1e4),
381  _bigChi2(1e10),
382  _psfDipoleFlux(psfDipoleFlux),
383  _source(source),
384  _exposure(exposure)
385  {}
afw::image::Exposure< PixelT > const & _exposure
afw::table::SourceRecord & _source

Member Function Documentation

template<typename PixelT>
int lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::getMaxPix ( ) const
inline

Definition at line 389 of file dipoleAlgorithm.cc.

template<typename PixelT>
int lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::getNpar ( ) const
inline

Definition at line 388 of file dipoleAlgorithm.cc.

template<typename PixelT>
virtual double lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::operator() ( std::vector< double > const &  params) const
inlinevirtual

Definition at line 393 of file dipoleAlgorithm.cc.

393  {
394  double negCenterX = params[NEGCENTXPAR];
395  double negCenterY = params[NEGCENTYPAR];
396  double negFlux = params[NEGFLUXPAR];
397  double posCenterX = params[POSCENTXPAR];
398  double posCenterY = params[POSCENTYPAR];
399  double posFlux = params[POSFLUXPAR];
400 
401  /* Restrict negative dipole to be negative; positive to be positive */
402  if ((negFlux > 0.0) || (posFlux < 0.0)) {
403  return _bigChi2;
404  }
405 
406  std::pair<double,int> fit = _psfDipoleFlux.chi2(_source, _exposure, negCenterX, negCenterY, negFlux, posCenterX, posCenterY, posFlux);
407  double chi2 = fit.first;
408  int nPix = fit.second;
409  if (nPix > _maxPix) {
410  return _bigChi2;
411  }
412 
413  return chi2;
414  }
int const NEGFLUXPAR(2)
int const NEGCENTXPAR(0)
afw::image::Exposure< PixelT > const & _exposure
int const POSCENTXPAR(3)
int const POSCENTYPAR(4)
afw::table::SourceRecord & _source
std::pair< double, int > chi2(afw::table::SourceRecord &source, afw::image::Exposure< PixelT > const &exposure, double negCenterX, double negCenterY, double negFlux, double posCenterX, double poCenterY, double posFlux) const
int const POSFLUXPAR(5)
int const NEGCENTYPAR(1)
template<typename PixelT>
void lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::setErrorDef ( double  def)
inline

Definition at line 387 of file dipoleAlgorithm.cc.

template<typename PixelT>
void lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::setMaxPix ( int  maxPix)
inline

Definition at line 390 of file dipoleAlgorithm.cc.

template<typename PixelT>
double lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::Up ( ) const
inline

Definition at line 386 of file dipoleAlgorithm.cc.

Member Data Documentation

template<typename PixelT>
double lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::_bigChi2
private

Definition at line 420 of file dipoleAlgorithm.cc.

template<typename PixelT>
double lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::_errorDef
private

Definition at line 417 of file dipoleAlgorithm.cc.

template<typename PixelT>
afw::image::Exposure<PixelT> const& lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::_exposure
private

Definition at line 424 of file dipoleAlgorithm.cc.

template<typename PixelT>
int lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::_maxPix
private

Definition at line 419 of file dipoleAlgorithm.cc.

template<typename PixelT>
int lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::_nPar
private

Definition at line 418 of file dipoleAlgorithm.cc.

template<typename PixelT>
PsfDipoleFlux const& lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::_psfDipoleFlux
private

Definition at line 422 of file dipoleAlgorithm.cc.

template<typename PixelT>
afw::table::SourceRecord& lsst::ip::diffim::MinimizeDipoleChi2< PixelT >::_source
private

Definition at line 423 of file dipoleAlgorithm.cc.


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