mxlib
c++ tools for analyzing astronomical data and other tasks by Jared R. Males. [git repo]
Loading...
Searching...
No Matches
mx::math::fit Namespace Reference

Classes

struct  airy2D_obs_fitter
 levmarInterface fitter structure for the centrally obscured Airy pattern. More...
 
struct  airy2D_obs_fitter_ps
 levmarInterface fitter structure for the obstructed Airy pattern, including platescale. More...
 
struct  airy2D_obs_fitter_ps_eps
 
struct  array2Fit
 Wrapper for a native array to pass to levmarInterface. More...
 
struct  array2FitAiry
 Wrapper for a native array to pass to levmarInterface, with Airy details. More...
 
struct  array2FitEmpirical
 Wrapper for a native array to pass to levmarInterface, with empirical function fit details. More...
 
struct  array2FitExpModGaussian
 Wrapper for a native array to pass to levmarInterface, with Exponentially Modified Gaussian details. More...
 
struct  array2FitGammaDistribution
 Wrapper for a native array to pass to levmarInterface, with GammaDistribution details. More...
 
struct  array2FitGaussian1D
 Wrapper for a native array to pass to levmarInterface, with !D Gaussian details. More...
 
struct  array2FitGaussian2D
 Wrapper for a native array to pass to levmarInterface, with 2D Gaussian details. More...
 
struct  array2FitMoffat
 Wrapper for a native array to pass to levmarInterface, with Moffat details. More...
 
struct  array2FitMoffat1D
 Wrapper for a native array to pass to levmarInterface, with Moffat details. More...
 
struct  array2FitWeibull
 Wrapper for a native array to pass to levmarInterface, with Weibull details. More...
 
struct  do_levmar
 
struct  do_levmar< fitterT, true >
 
struct  empirical2D_fitter
 levmarInterface fitter structure for 2D empirical functions. More...
 
struct  empirical2D_sym_fitter
 
class  fitAiry2D
 Class to manage fitting a 2D Airy pattern to data via the levmarInterface. More...
 
class  fitEmpirical2DGen
 Class to manage fitting a 2D Moffat to data via the levmarInterface. More...
 
class  fitExpModGaussian
 Class to manage fitting the Exponetially Modified Gaussian Distribution to data via the levmarInterface. More...
 
struct  fitExpModGaussian_3param_fitter
 levmarInterface fitter structure for the Exponentially Modified Gaussian with fixed constant level. More...
 
struct  fitExpModGaussian_4param_fitter
 levmarInterface fitter structure for the Exponentially Modified Gaussian with arbitrary constant level. More...
 
class  fitGammaDistribution
 Class to manage fitting the GammaDistribution Distribution to data via the levmarInterface. More...
 
class  fitGaussian1D
 Class to manage fitting a 1D Gaussian to data via the levmarInterface. More...
 
class  fitGaussian2D
 Class to manage fitting a 2D Gaussian to data via the levmarInterface. More...
 
class  fitMoffat1D
 Class to manage fitting a 1D Moffat to data via the levmarInterface. More...
 
class  fitMoffat2D
 Class to manage fitting a 2D Moffat to data via the levmarInterface. More...
 
class  fitWeibull
 Class to manage fitting the Weibull Distribution to data via the levmarInterface. More...
 
struct  gammaDistribution_2param_fitter
 levmarInterface fitter structure for the Gamma Distribution More...
 
struct  gammaDistribution_3param_fitter
 levmarInterface fitter structure for the shifted Gamma Distribution More...
 
struct  gammaDistribution_4param_fitter
 levmarInterface fitter structure for the shifted Gamma Distribution with arbitrary peak scaling More...
 
struct  gaussian1D_fitter
 levmarInterface fitter structure for the symmetric Gaussian. More...
 
struct  gaussian2D_gen_fitter
 levmarInterface fitter structure for the general elliptical Gaussian. More...
 
struct  gaussian2D_gen_fitter_bgfixed
 
struct  gaussian2D_sym_fitter
 Alias for the fitGaussian1D type fitting the gaussian. More...
 
struct  hasJacobian
 Test whether a function type has a Jacobian function by testing whether it has a typedef of "hasJacobian". More...
 
struct  levmar_allocate_size
 
struct  levmar_allocate_size< fitterT, true >
 
class  levmarInterface
 A templatized interface to the levmar package. More...
 
struct  moffat1D_fitter
 levmarInterface fitter structure for the 1D Moffat. More...
 
struct  moffat2D_sym_fitter
 levmarInterface fitter structure for the symmetric Moffat. More...
 
struct  weibull_2param_fitter
 levmarInterface fitter structure for the shifted Weibull Distribution More...
 
struct  weibull_3param_fitter
 levmarInterface fitter structure for the shifted Weibull Distribution More...
 

Typedefs

template<typename realT >
using fitAiry2DbothFixed = mx::math::fit::fitAiry2D< mx::math::fit::airy2D_obs_fitter< realT > >
 Alias for the fitAiry2D type with both platescale and cen-obs fixed.
 
template<typename realT >
using fitAiry2DcenObsFixed = mx::math::fit::fitAiry2D< mx::math::fit::airy2D_obs_fitter_ps< realT > >
 Alias for the fitAiry2D type with cen-obs fixed.
 
template<typename realT >
using fitAiry2DnoneFixed = mx::math::fit::fitAiry2D< mx::math::fit::airy2D_obs_fitter_ps_eps< realT > >
 Alias for the fitAiry2D type with none fixed.
 
template<typename realT >
using fitEmpirical2D = mx::math::fit::fitEmpirical2DGen< mx::math::fit::empirical2D_fitter< realT > >
 Alias for the fitEmpirical2D type fitting the symmetric Moffat profile.
 
template<typename realT >
using fitGaussian2Dsym = fitGaussian2D< mx::math::fit::gaussian2D_sym_fitter< realT > >
 Alias for the fitGaussian2D type fitting the symmetric gaussian.
 
template<typename realT >
using fitGaussian2Dgen = fitGaussian2D< mx::math::fit::gaussian2D_gen_fitter< realT > >
 Alias for the fitGaussian2D type fitting the general elliptical gaussian.
 
template<typename realT >
using fitMoffat2Dsym = mx::math::fit::fitMoffat2D< mx::math::fit::moffat2D_sym_fitter< realT > >
 Alias for the fitMoffat2D type fitting the symmetric Moffat profile.
 

Functions

template<typename realT >
int guessGauss2D_ang (realT &Ag, realT &xg, realT &yg, realT &xFWHM, realT &yFWHM, realT &angG, mx::improc::eigenImage< realT > &im, realT maxWidth, realT widthWidth, realT nAngs, realT xg0, realT yg0)
 Form an estimate of the parameters of an elliptical Gaussian from a 2D image.
 
template int guessGauss2D_ang< float > (float &Ag, float &xg, float &yg, float &xFWHM, float &yFWHM, float &angG, mx::improc::eigenImage< float > &im, float maxWidth, float widthWidth, float nAngs, float xg0, float yg0)
 
template int guessGauss2D_ang< double > (double &Ag, double &xg, double &yg, double &xFWHM, double &yFWHM, double &angG, mx::improc::eigenImage< double > &im, double maxWidth, double widthWidth, double nAngs, double xg0, double yg0)
 
template<typename floatT >
int levmar_dif (void(*func)(floatT *p, floatT *hx, int m, int n, void *adata), floatT *p, floatT *x, int m, int n, int itmax, floatT *opts, floatT *info, floatT *work, floatT *covar, void *adata)
 
template<>
int levmar_dif< double > (void(*func)(double *p, double *hx, int m, int n, void *adata), double *p, double *x, int m, int n, int itmax, double *opts, double *info, double *work, double *covar, void *adata)
 
template<>
int levmar_dif< float > (void(*func)(float *p, float *hx, int m, int n, void *adata), float *p, float *x, int m, int n, int itmax, float *opts, float *info, float *work, float *covar, void *adata)
 
template<typename floatT >
int levmar_der (void(*func)(floatT *p, floatT *hx, int m, int n, void *adata), void(*jacf)(floatT *p, floatT *j, int m, int n, void *adata), floatT *p, floatT *x, int m, int n, int itmax, floatT *opts, floatT *info, floatT *work, floatT *covar, void *adata)
 
template<>
int levmar_der< double > (void(*func)(double *p, double *hx, int m, int n, void *adata), void(*jacf)(double *p, double *j, int m, int n, void *adata), double *p, double *x, int m, int n, int itmax, double *opts, double *info, double *work, double *covar, void *adata)
 
template<>
int levmar_der< float > (void(*func)(float *p, float *hx, int m, int n, void *adata), void(*jacf)(float *p, float *j, int m, int n, void *adata), float *p, float *x, int m, int n, int itmax, float *opts, float *info, float *work, float *covar, void *adata)
 

Function Documentation

◆ guessGauss2D_ang< double >()

template int mx::math::fit::guessGauss2D_ang< double > ( double Ag,
double xg,
double yg,
double xFWHM,
double yFWHM,
double angG,
mx::improc::eigenImage< double > &  im,
double  maxWidth,
double  widthWidth,
double  nAngs,
double  xg0,
double  yg0 
)
extern

◆ guessGauss2D_ang< float >()

template int mx::math::fit::guessGauss2D_ang< float > ( float Ag,
float xg,
float yg,
float xFWHM,
float yFWHM,
float angG,
mx::improc::eigenImage< float > &  im,
float  maxWidth,
float  widthWidth,
float  nAngs,
float  xg0,
float  yg0 
)
extern

◆ levmar_der()

template<typename floatT >
int mx::math::fit::levmar_der ( void(*)(floatT *p, floatT *hx, int m, int n, void *adata)  func,
void(*)(floatT *p, floatT *j, int m, int n, void *adata)  jacf,
floatT *  p,
floatT *  x,
int  m,
int  n,
int  itmax,
floatT *  opts,
floatT *  info,
floatT *  work,
floatT *  covar,
void adata 
)

◆ levmar_der< double >()

template<>
int mx::math::fit::levmar_der< double > ( void(*)(double *p, double *hx, int m, int n, void *adata)  func,
void(*)(double *p, double *j, int m, int n, void *adata)  jacf,
double p,
double x,
int  m,
int  n,
int  itmax,
double opts,
double info,
double work,
double covar,
void adata 
)

◆ levmar_der< float >()

template<>
int mx::math::fit::levmar_der< float > ( void(*)(float *p, float *hx, int m, int n, void *adata)  func,
void(*)(float *p, float *j, int m, int n, void *adata)  jacf,
float p,
float x,
int  m,
int  n,
int  itmax,
float opts,
float info,
float work,
float covar,
void adata 
)

◆ levmar_dif()

template<typename floatT >
int mx::math::fit::levmar_dif ( void(*)(floatT *p, floatT *hx, int m, int n, void *adata)  func,
floatT *  p,
floatT *  x,
int  m,
int  n,
int  itmax,
floatT *  opts,
floatT *  info,
floatT *  work,
floatT *  covar,
void adata 
)

◆ levmar_dif< double >()

template<>
int mx::math::fit::levmar_dif< double > ( void(*)(double *p, double *hx, int m, int n, void *adata)  func,
double p,
double x,
int  m,
int  n,
int  itmax,
double opts,
double info,
double work,
double covar,
void adata 
)

◆ levmar_dif< float >()

template<>
int mx::math::fit::levmar_dif< float > ( void(*)(float *p, float *hx, int m, int n, void *adata)  func,
float p,
float x,
int  m,
int  n,
int  itmax,
float opts,
float info,
float work,
float covar,
void adata 
)