|
Isis 3 Programmer Reference
|
1 #ifndef ZeroBufferFit_h
2 #define ZeroBufferFit_h
15 #include "HiCalTypes.h"
16 #include "HiCalUtil.h"
17 #include "HiCalConf.h"
18 #include "NonLinearLSQ.h"
20 #include "IException.h"
54 void setBin(
int bin) { _timet.setBin(bin); }
71 inline int size()
const {
return (_data.dim()); }
84 int nSize()
const {
return (_b2.dim()); }
97 void setabsErr(
double absError) { _absErr = absError; }
99 void setrelErr(
double relError) { _relErr = relError; }
101 double absErr()
const {
return (_absErr); }
103 double relErr()
const {
return (_relErr); }
108 const NLVector &uncerts,
double cplxconj,
111 NLVector
f_x(
const NLVector &a);
112 NLMatrix
df_x(
const NLVector &a);
115 double Chisq()
const {
return (_chisq); }
142 virtual void printOn(std::ostream &o)
const;
void setrelErr(double relError)
Sets the relative error parameter
HiVector Solve(const HiVector &d)
Compute non-linear fit to (typically) ZeroBufferSmooth module.
int size() const
Returns the size of the data buffer.
Module manages HiRISE calibration vectors from various sources.
int goodLines(const HiVector &d) const
Returns the number of good lines in the image.
ZeroBufferFit(const HiCalConf &conf)
Compute second level drift correction (Zf module)
void setabsErr(double absError)
Sets the absolute error parameter.
Computes non-linear lsq fit of HiRISE Drift (Zd module)
double absErr() const
Returns the current value of the absolute error.
bool gotGoodLines(const HiVector &d) const
Determines if the vector contains any valid lines.
void setLineTime(double ltime)
Set scan line time.
int DoF() const
Returns the Degrees of Freedom.
HiVector Normalize(const HiVector &v)
Compute normalized solution vector from result.
NonLinearLSQ Computes a fit using a Levenberg-Marquardt algorithm.
Compute HiRISE line times.
virtual void printOn(std::ostream &o) const
Provides virtualized dump of data from this module.
NLMatrix df_x(const NLVector &a)
Computes the first derivative of the function at the current iteration.
TNT::Array1D< double > HiVector
1-D Buffer
void setBin(int bin)
Set binning/summing mode.
int nParms() const
Number of parameter to be fitted.
HiVector Yfit() const
Computes the solution vector using current coefficents.
double relErr() const
Returns the current value of the relative error.
HiVector poly_fit(const HiVector &d, const double line0=0.0) const
Compute a polyonomial fit using multivariate statistics.
int checkIteration(const int Iter, const NLVector &fitcoefs, const NLVector &uncerts, double cplxconj, int Istatus)
Computes the interation check for convergence.
int nSize() const
Returns the size of the fitted buffer.
NLVector f_x(const NLVector &a)
Computes the function value at the current iteration.
NLVector guess()
Compute the initial guess of the fit.
virtual ~ZeroBufferFit()
Destructor.
double Chisq() const
Returns the Chi-Square value of the fit solution.
This is free and unencumbered software released into the public domain.