LSSTApplications  10.0-2-g4f67435,11.0.rc2+1,11.0.rc2+12,11.0.rc2+3,11.0.rc2+4,11.0.rc2+5,11.0.rc2+6,11.0.rc2+7,11.0.rc2+8
LSSTDataManagementBasePackage
EllipseSolver.h
Go to the documentation of this file.
1 #ifndef MeasAlgoShapeletEllipseSolver_H
2 #define MeasAlgoShapeletEllipseSolver_H
3 
6 #include <vector>
8 
9 namespace lsst {
10 namespace meas {
11 namespace algorithms {
12 namespace shapelet {
13 
14  class EllipseSolver3 : public NLSolver
15  {
16  public :
17 
19  const BVec& b0, int order,
20  bool fixcen=false, bool fixgam=false, bool fixmu=false);
22 
23  void calculateF(const DVector& x, DVector& f) const;
24  void calculateJ(const DVector& x, const DVector& f, DMatrix& df) const;
25 
26  void useNumericJ();
27  void dontZeroB11();
28  void getCovariance(DMatrix& cov) const;
29  void getInverseCovariance(DMatrix& invcov) const;
30 
31  // CallF takes x and f of length 5, rather than whatever shorter
32  // length that F takex (depending on if things are fixed).
33  void callF(const DVector& x, DVector& f) const;
34  bool solve(DVector& x, DVector& f) const;
35  bool testJ(const DVector& x, DVector& f,
36  std::ostream* os=0, double relerr=0.) const;
37 
38  private :
39 
40  struct ESImpl3;
41 
42  ESImpl3* _pimpl;
43  };
44 
45 }}}}
46 
47 #endif
void getInverseCovariance(DMatrix &invcov) const
bool solve(DVector &x, DVector &f) const
void calculateJ(const DVector &x, const DVector &f, DMatrix &df) const
int x
EllipseSolver3(const BVec &b0, int order, bool fixcen=false, bool fixgam=false, bool fixmu=false)
bool testJ(const DVector &x, DVector &f, std::ostream *os=0, double relerr=0.) const
void calculateF(const DVector &x, DVector &f) const
void callF(const DVector &x, DVector &f) const