26#ifndef SCIMATH_NONLINEARFIT_H
27#define SCIMATH_NONLINEARFIT_H
30#include <casacore/casa/aips.h>
31#include <casacore/scimath/Fitting/GenericL2Fit.h>
243#ifndef CASACORE_NO_AUTO_TEMPLATES
244#include <casacore/scimath/Fitting/NonLinearFit.tcc>
T BaseType
Template base type.
Bool solved_p
Have solution.
void fillSVDConstraints()
Get the SVD constraints.
uInt nr_p
The rank of the solution.
Vector< typename FunctionTraits< T >::BaseType > condEq_p
Condition equation parameters (for number of adjustable parameters)
Vector< typename FunctionTraits< T >::BaseType > err_p
Local error area.
void buildConstraint()
Build the constraint equations.
Vector< typename FunctionTraits< T >::BaseType > ferr_p
uInt pCount_p
Number of available parameters.
Vector< typename FunctionTraits< T >::BaseType > sol_p
Local solution area.
Bool errors_p
Have errors.
Function< typename FunctionTraits< T >::DiffType, typename FunctionTraits< T >::DiffType > * ptr_derive_p
Function to use in evaluating condition equation.
Vector< typename FunctionTraits< T >::BaseType > fsol_p
Vector< typename FunctionTraits< T >::ArgType > arg_p
Contiguous argument areas.
FunctionTraits< T >::DiffType valder_p
Local value and derivatives.
Vector< typename FunctionTraits< T >::BaseType > fullEq_p
Equation for all available parameters.
void set(uInt nUnknowns, uInt nConstraints=0)
Set new sizes (default is for Real)
LSQFit::ReadyCode isReady() const
Ask the state of the non-linear solutions.
static const Double CRITERIUM
Default convergence criterium (0.001)
virtual ~NonLinearFit()
Destructor.
uInt curiter_p
Current iteration number.
Double getCriteria() const
getCriteria() queries the current criteria
virtual Bool fitIt(Vector< typename FunctionTraits< T >::BaseType > &sol, const Array< typename FunctionTraits< T >::BaseType > &x, const Vector< typename FunctionTraits< T >::BaseType > &y, const Vector< typename FunctionTraits< T >::BaseType > *const sigma, const Vector< Bool > *const mask=0)=0
Generalised fitter.
static const uInt MAXITER
Default maximum number of iterations (30)
NonLinearFit(Bool svd=False)
Create a fitter: the normal way to generate a fitter object.
void setMaxIter(uInt maxIter=MAXITER)
setMaxIter() sets the maximum number of iterations to do before stopping.
void setCriteria(const Double criteria=CRITERIUM)
setCriteria() sets the convergence criteria.
uInt getMaxIter() const
getMaxIter() queries what the maximum number of iterations currently is
Bool converged() const
Check to see if the fit has converged.
uInt currentIteration() const
currentIteration() queries what the current iteration is
NonLinearFit & operator=(const NonLinearFit &other)
Assignment (deep copy)
uInt maxiter_p
Maximum number of iterations.
NonLinearFit(const NonLinearFit &other)
Copy constructor (deep copy)
Double criterium_p
Convergence criteria.
Bool converge_p
Has fit converged.
this file contains all the compiler specific defines
LatticeExprNode mask(const LatticeExprNode &expr)
This function returns the mask of the given expression.
bool Bool
Define the standard types used by Casacore.