casacore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
casacore::LSQaips Class Reference

Interface for Casacore Vectors in least squares fitting. More...

#include <LSQaips.h>

Inheritance diagram for casacore::LSQaips:
casacore::LSQFit casacore::GenericL2Fit< T > casacore::GenericL2Fit< DComplex > casacore::GenericL2Fit< Double > casacore::LinearFit< T > casacore::NonLinearFit< T > casacore::NonLinearFit< Double > casacore::LinearFitSVD< T > casacore::NonLinearFitLM< T > casacore::NonLinearFitLM< Double >

Public Member Functions

 LSQaips (uInt nUnknowns, uInt nConstraints=0)
 Construct an object with the number of unknown, knowns and constraints, and type, using the default collinearity factor and the default Levenberg-Marquardt adjustment factor. More...
 
 LSQaips (uInt nUnknowns, const LSQReal &, uInt nConstraints=0)
 Allow explicit complex/real specification. More...
 
 LSQaips (uInt nUnknowns, const LSQComplex &, uInt nConstraints=0)
 
 LSQaips ()
 Default constructor (empty, real, only usable after a set(nUnknowns)) More...
 
 LSQaips (const LSQaips &other)
 Copy constructor (deep copy) More...
 
LSQaipsoperator= (const LSQaips &other)
 Assignment (deep copy) More...
 
 ~LSQaips ()
 
template<class U >
void solve (U *sol)
 Solve normal equations. More...
 
template<class U >
void solve (std::complex< U > *sol)
 
template<class U >
void solve (U &sol)
 
template<class U >
void solve (Vector< U > &sol)
 
template<class U >
Bool solveLoop (uInt &nRank, U *sol, Bool doSVD=False)
 Solve a Levenberg-Marquardt loop. More...
 
template<class U >
Bool solveLoop (uInt &nRank, std::complex< U > *sol, Bool doSVD=False)
 
template<class U >
Bool solveLoop (uInt &nRank, U &sol, Bool doSVD=False)
 
template<class U >
Bool solveLoop (uInt &nRank, Vector< U > &sol, Bool doSVD=False)
 
template<class U >
Bool solveLoop (Double &fit, uInt &nRank, U *sol, Bool doSVD=False)
 
template<class U >
Bool solveLoop (Double &fit, uInt &nRank, std::complex< U > *sol, Bool doSVD=False)
 
template<class U >
Bool solveLoop (Double &fit, uInt &nRank, U &sol, Bool doSVD=False)
 
template<class U >
Bool solveLoop (Double &fit, uInt &nRank, Vector< U > &sol, Bool doSVD=False)
 
template<class U >
Bool getCovariance (U *covar)
 Get the covariance matrix. More...
 
template<class U >
Bool getCovariance (std::complex< U > *covar)
 
template<class U >
Bool getCovariance (Array< U > &covar)
 
template<class U >
Bool getErrors (U *errors)
 Get main diagonal of covariance function (of size nUnknowns) More...
 
template<class U >
Bool getErrors (std::complex< U > *errors)
 
template<class U >
Bool getErrors (U &errors)
 
template<class U >
Bool getErrors (Vector< U > &errors)
 
- Public Member Functions inherited from casacore::LSQFit
 LSQFit (uInt nUnknowns, uInt nConstraints=0)
 Construct an object with the number of unknowns and constraints, using the default collinearity factor and the default Levenberg-Marquardt adjustment factor. More...
 
 LSQFit (uInt nUnknowns, const LSQReal &, uInt nConstraints=0)
 Allow explicit Real specification. More...
 
 LSQFit (uInt nUnknowns, const LSQComplex &, uInt nConstraints=0)
 Allow explicit Complex specification. More...
 
 LSQFit ()
 Default constructor (empty, only usable after a set(nUnknowns)) More...
 
 LSQFit (const LSQFit &other)
 Copy constructor (deep copy) More...
 
LSQFitoperator= (const LSQFit &other)
 Assignment (deep copy) More...
 
 ~LSQFit ()
 
Bool invert (uInt &nRank, Bool doSVD=False)
 Triangularize the normal equations and determine the rank nRank of the normal equations and, in the case of an SVD solution, the constraint equations. More...
 
template<class U >
void copy (const Double *beg, const Double *end, U &sol, LSQReal)
 Copy date from beg to end; converting if necessary to complex data. More...
 
template<class U >
void copy (const Double *beg, const Double *end, U &sol, LSQComplex)
 
template<class U >
void copy (const Double *beg, const Double *end, U *sol, LSQReal)
 
template<class U >
void copy (const Double *beg, const Double *end, U *sol, LSQComplex)
 
template<class U >
void uncopy (Double *beg, const Double *end, U &sol, LSQReal)
 
template<class U >
void uncopy (Double *beg, const Double *end, U &sol, LSQComplex)
 
template<class U >
void uncopy (Double *beg, const Double *end, U *sol, LSQReal)
 
template<class U >
void uncopy (Double *beg, const Double *end, U *sol, LSQComplex)
 
template<class U >
void copyDiagonal (U &errors, LSQReal)
 
template<class U >
void copyDiagonal (U &errors, LSQComplex)
 
template<class U >
void solve (U *sol)
 Solve normal equations. More...
 
template<class U >
void solve (std::complex< U > *sol)
 
template<class U >
void solve (U &sol)
 
template<class U >
Bool solveLoop (uInt &nRank, U *sol, Bool doSVD=False)
 Solve a loop in a non-linear set. More...
 
template<class U >
Bool solveLoop (uInt &nRank, std::complex< U > *sol, Bool doSVD=False)
 
template<class U >
Bool solveLoop (uInt &nRank, U &sol, Bool doSVD=False)
 
template<class U >
Bool solveLoop (Double &fit, uInt &nRank, U *sol, Bool doSVD=False)
 
template<class U >
Bool solveLoop (Double &fit, uInt &nRank, std::complex< U > *sol, Bool doSVD=False)
 
template<class U >
Bool solveLoop (Double &fit, uInt &nRank, U &sol, Bool doSVD=False)
 
template<class U , class V >
void makeNorm (const V &cEq, const U &weight, const U &obs, Bool doNorm=True, Bool doKnown=True)
 Make normal equations using the cEq condition equation (cArray) (with nUnknowns elements) and a weight weight, given the known observed value obs. More...
 
template<class U , class V >
void makeNorm (const V &cEq, const U &weight, const U &obs, LSQFit::Real, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V >
void makeNorm (const V &cEq, const U &weight, const std::complex< U > &obs, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V >
void makeNorm (const V &cEq, const U &weight, const std::complex< U > &obs, LSQFit::Complex, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V >
void makeNorm (const V &cEq, const U &weight, const std::complex< U > &obs, LSQFit::Separable, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V >
void makeNorm (const V &cEq, const U &weight, const std::complex< U > &obs, LSQFit::AsReal, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V >
void makeNorm (const V &cEq, const U &weight, const std::complex< U > &obs, LSQFit::Conjugate, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V , class W >
void makeNorm (uInt nIndex, const W &cEqIndex, const V &cEq, const U &weight, const U &obs, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V , class W >
void makeNorm (uInt nIndex, const W &cEqIndex, const V &cEq, const V &cEq2, const U &weight, const U &obs, const U &obs2, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V , class W >
void makeNorm (uInt nIndex, const W &cEqIndex, const V &cEq, const U &weight, const U &obs, LSQFit::Real, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V , class W >
void makeNorm (uInt nIndex, const W &cEqIndex, const V &cEq, const U &weight, const std::complex< U > &obs, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V , class W >
void makeNorm (uInt nIndex, const W &cEqIndex, const V &cEq, const U &weight, const std::complex< U > &obs, LSQFit::Complex, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V , class W >
void makeNorm (uInt nIndex, const W &cEqIndex, const V &cEq, const U &weight, const std::complex< U > &obs, LSQFit::Separable, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V , class W >
void makeNorm (uInt nIndex, const W &cEqIndex, const V &cEq, const U &weight, const std::complex< U > &obs, LSQFit::AsReal, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V , class W >
void makeNorm (uInt nIndex, const W &cEqIndex, const V &cEq, const U &weight, const std::complex< U > &obs, LSQFit::Conjugate, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V >
void makeNorm (const std::vector< std::pair< uInt, V > > &cEq, const U &weight, const U &obs, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V >
void makeNorm (const std::vector< std::pair< uInt, V > > &cEq, const U &weight, const U &obs, LSQFit::Real, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V >
void makeNorm (const std::vector< std::pair< uInt, V > > &cEq, const U &weight, const std::complex< U > &obs, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V >
void makeNorm (const std::vector< std::pair< uInt, V > > &cEq, const U &weight, const std::complex< U > &obs, LSQFit::Complex, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V >
void makeNorm (const std::vector< std::pair< uInt, V > > &cEq, const U &weight, const std::complex< U > &obs, LSQFit::Separable, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V >
void makeNorm (const std::vector< std::pair< uInt, V > > &cEq, const U &weight, const std::complex< U > &obs, LSQFit::AsReal, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V >
void makeNorm (const std::vector< std::pair< uInt, V > > &cEq, const U &weight, const std::complex< U > &obs, LSQFit::Conjugate, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V , class W >
void makeNormSorted (uInt nIndex, const W &cEqIndex, const V &cEq, const U &weight, const U &obs, Bool doNorm=True, Bool doKnown=True)
 
template<class U , class V , class W >
void makeNormSorted (uInt nIndex, const W &cEqIndex, const V &cEq, const V &cEq2, const U &weight, const U &obs, const U &obs2, Bool doNorm=True, Bool doKnown=True)
 
template<class U >
Bool getConstraint (uInt n, U *cEq) const
 Get the n-th (from 0 to the rank deficiency, or missing rank, see e.g. More...
 
template<class U >
Bool getConstraint (uInt n, std::complex< U > *cEq) const
 
template<class U >
Bool getConstraint (uInt n, U &cEq) const
 
template<class U , class V >
Bool setConstraint (uInt n, const V &cEq, const U &obs)
 Add a new constraint equation (updating nConstraints); or set a numbered constraint equation (0..nConstraints-1). More...
 
template<class U , class V >
Bool setConstraint (uInt n, const V &cEq, const std::complex< U > &obs)
 
template<class U , class V , class W >
Bool setConstraint (uInt n, uInt nIndex, const W &cEqIndex, const V &cEq, const U &obs)
 
template<class U , class V , class W >
Bool setConstraint (uInt n, uInt nIndex, const W &cEqIndex, const V &cEq, const std::complex< U > &obs)
 
template<class U , class V >
Bool addConstraint (const V &cEq, const U &obs)
 
template<class U , class V >
Bool addConstraint (const V &cEq, const std::complex< U > &obs)
 
template<class U , class V , class W >
Bool addConstraint (uInt nIndex, const W &cEqIndex, const V &cEq, const U &obs)
 
template<class U , class V , class W >
Bool addConstraint (uInt nIndex, const W &cEqIndex, const V &cEq, const std::complex< U > &obs)
 
Bool merge (const LSQFit &other)
 Merge other LSQFit object (i.e. More...
 
Bool merge (const LSQFit &other, uInt nIndex, const uInt *nEqIndex)
 
Bool merge (const LSQFit &other, uInt nIndex, const std::vector< uInt > &nEqIndex)
 
template<class W >
Bool merge (const LSQFit &other, uInt nIndex, const W &nEqIndex)
 
void reset ()
 Reset status to empty. More...
 
void set (uInt nUnknowns, uInt nConstraints=0)
 Set new sizes (default is for Real) More...
 
void set (Int nUnknowns, Int nConstraints=0)
 
void set (uInt nUnknowns, const LSQReal &, uInt nConstraints=0)
 
void set (Int nUnknowns, const LSQReal &, Int nConstraints=0)
 
void set (uInt nUnknowns, const LSQComplex &, uInt nConstraints=0)
 
void set (Int nUnknowns, const LSQComplex &, Int nConstraints=0)
 
void set (Double factor=1e-6, Double LMFactor=1e-3)
 Set new factors (collinearity factor, and Levenberg-Marquardt LMFactor) More...
 
void setEpsValue (Double epsval=1e-8)
 Set new value solution test. More...
 
void setEpsDerivative (Double epsder=1e-8)
 Set new derivative test. More...
 
void setMaxIter (uInt maxiter=0)
 Set maximum number of iterations. More...
 
uInt nIterations () const
 Get number of iterations done. More...
 
void setBalanced (Bool balanced=False)
 Set the expected form of the normal equations. More...
 
LSQFit::ReadyCode isReady () const
 Ask the state of the non-linear solutions. More...
 
const std::string & readyText () const
 
template<class U >
Bool getCovariance (U *covar)
 Get the covariance matrix (of size nUnknowns * nUnknowns) More...
 
template<class U >
Bool getCovariance (std::complex< U > *covar)
 
template<class U >
Bool getErrors (U *errors)
 Get main diagonal of covariance function (of size nUnknowns) More...
 
template<class U >
Bool getErrors (std::complex< U > *errors)
 
template<class U >
Bool getErrors (U &errors)
 
uInt nUnknowns () const
 Get the number of unknowns. More...
 
uInt nConstraints () const
 Get the number of constraints. More...
 
uInt getDeficiency () const
 Get the rank deficiency
Warning: Note that the number is returned assuming real values; For complex values it has to be halved
More...
 
Double getChi () const
 Get chi^2 (both are identical); the standard deviation (per observation) and the standard deviation per weight unit. More...
 
Double getChi2 () const
 
Double getSD () const
 
Double getWeightedSD () const
 
void debugIt (uInt &nun, uInt &np, uInt &ncon, uInt &ner, uInt &rank, Double *&nEq, Double *&known, Double *&constr, Double *&er, uInt *&piv, Double *&sEq, Double *&sol, Double &prec, Double &nonlin) const
 Debug: More...
 
Bool fromRecord (String &error, const RecordInterface &in)
 Create an LSQFit object from a record. More...
 
Bool toRecord (String &error, RecordInterface &out) const
 Create a record from an LSQFit object. More...
 
const Stringident () const
 Get identification of record. More...
 
void toAipsIO (AipsIO &) const
 Save or restore using AipsIO. More...
 
void fromAipsIO (AipsIO &)
 

Additional Inherited Members

- Public Types inherited from casacore::LSQFit
enum  ReadyCode {
  NONREADY,
  SOLINCREMENT,
  DERIVLEVEL,
  MAXITER,
  NOREDUCTION,
  SINGULAR,
  N_ReadyCode
}
 State of the non-linear solution. More...
 
enum  ErrorField {
  NC,
  SUMWEIGHT,
  SUMLL,
  CHI2,
  N_ErrorField
}
 Offset of fields in error_p data area. More...
 
- Static Public Attributes inherited from casacore::LSQFit
static Real REAL
 And values to use. More...
 
static Complex COMPLEX
 
static Separable SEPARABLE
 
static AsReal ASREAL
 
static Conjugate CONJUGATE
 
- Protected Types inherited from casacore::LSQFit
enum  StateBit {
  INVERTED,
  TRIANGLE,
  NONLIN,
  N_StateBit
}
 Bits that can be set/referenced. More...
 
- Protected Member Functions inherited from casacore::LSQFit
Doublerowrt (uInt i) const
 Get pointer in rectangular array. More...
 
Doublerowru (uInt i) const
 
void init ()
 Initialise areas. More...
 
void clear ()
 Clear areas. More...
 
void deinit ()
 De-initialise area. More...
 
void solveIt ()
 Solve normal equations. More...
 
Bool solveItLoop (Double &fit, uInt &nRank, Bool doSVD=False)
 One non-linear LM loop. More...
 
void solveMR (uInt nin)
 Solve missing rank part. More...
 
Bool invertRect ()
 Invert rectangular matrix (i.e. More...
 
Double normSolution (const Double *sol) const
 Get the norm of the current solution vector. More...
 
Double normInfKnown (const Double *known) const
 Get the infinite norm of the known vector. More...
 
Bool mergeIt (const LSQFit &other, uInt nIndex, const uInt *nEqIndex)
 Merge sparse normal equations. More...
 
void save (Bool all=True)
 Save current status (or part) More...
 
void restore (Bool all=True)
 Restore current status. More...
 
void copy (const LSQFit &other, Bool all=True)
 Copy data. More...
 
void extendConstraints (uInt n)
 Extend the constraint equation area to the specify number of equations. More...
 
void createNCEQ ()
 Create the solution equation area nceq_p and fill it. More...
 
void getWorkSOL ()
 Get work areas for solutions, covariance. More...
 
void getWorkCOV ()
 
- Static Protected Member Functions inherited from casacore::LSQFit
static Double realMC (const std::complex< Double > &x, const std::complex< Double > &y)
 Calculate the real or imag part of x*conj(y) More...
 
static Double imagMC (const std::complex< Double > &x, const std::complex< Double > &y)
 
static Float realMC (const std::complex< Float > &x, const std::complex< Float > &y)
 
static Float imagMC (const std::complex< Float > &x, const std::complex< Float > &y)
 
- Protected Attributes inherited from casacore::LSQFit
uInt state_p
 Bits set to indicate state. More...
 
uInt nun_p
 Number of unknowns. More...
 
uInt ncon_p
 Number of constraints. More...
 
uInt n_p
 Matrix size (will be n_p = nun_p + ncon_p) More...
 
uInt r_p
 Rank of normal equations (normally n_p) More...
 
Double prec_p
 Collinearity precision. More...
 
Double startnon_p
 Levenberg start factor. More...
 
Double nonlin_p
 Levenberg current factor. More...
 
Double stepfactor_p
 Levenberg step factor. More...
 
Double epsval_p
 Test value for [incremental] solution in non-linear loop. More...
 
Double epsder_p
 Test value for known vector in non-linear loop. More...
 
Bool balanced_p
 Indicator for a well balanced normal equation. More...
 
uInt maxiter_p
 Maximum number of iterations for non-linear solution. More...
 
uInt niter_p
 Iteration count for non-linear solution. More...
 
ReadyCode ready_p
 Indicate the non-linear state. More...
 
uIntpiv_p
 Pivot table (n_p) More...
 
LSQMatrixnorm_p
 Normal equations (triangular nun_p * nun_p) More...
 
uInt nnc_p
 Current length nceq_p. More...
 
LSQMatrixnceq_p
 Normal combined with constraint equations for solutions (triangular nnc_p*nnc_p) More...
 
Doubleknown_p
 Known part equations (n_p) More...
 
Doubleerror_p
 Counts for errors (N_ErrorField) More...
 
Doubleconstr_p
 Constraint equation area (nun_p*ncon_p)) More...
 
Doublesol_p
 Solution area (n_p) More...
 
LSQFitnar_p
 Save area for non-linear case (size determined internally) More...
 
Doublelar_p
 Save area for non-symmetric (i.e. More...
 
Doublewsol_p
 Work areas for interim solutions and covariance. More...
 
Doublewcov_p
 
- Static Protected Attributes inherited from casacore::LSQFit
static const String recid
 Record field names. More...
 
static const String state
 
static const String nun
 
static const String ncon
 
static const String prec
 
static const String startnon
 
static const String nonlin
 
static const String rank
 
static const String nnc
 
static const String piv
 
static const String constr
 
static const String known
 
static const String errors
 
static const String sol
 
static const String lar
 
static const String wsol
 
static const String wcov
 
static const String nceq
 
static const String nar
 

Detailed Description

Interface for Casacore Vectors in least squares fitting.

Review Status

Date Reviewed:
2004/04/01

Prerequisite

Etymology

From Least SQuares and aips++ (now Casacore)

Synopsis

The interface used in the LSQaips class is in terms of Casacore Vectors directly, rather than an STL iterator (like VectorSTLIterator) based on it.

Its functionality is identical to that of the LSQFit class, although it will be faster to use the iterator interface directly, since constructing of temporary iterators can be avoided

Example

See the tLSQaips.cc program for extensive examples. Note: this class is in an interim state.

Motivation

The class was written to enable easy tranistion from the current Vector to the Vector::iterator interface.

To Do

Definition at line 83 of file LSQaips.h.

Constructor & Destructor Documentation

casacore::LSQaips::LSQaips ( uInt  nUnknowns,
uInt  nConstraints = 0 
)
inline

Construct an object with the number of unknown, knowns and constraints, and type, using the default collinearity factor and the default Levenberg-Marquardt adjustment factor.

Assume real

Definition at line 92 of file LSQaips.h.

casacore::LSQaips::LSQaips ( uInt  nUnknowns,
const LSQReal ,
uInt  nConstraints = 0 
)
inline

Allow explicit complex/real specification.

Definition at line 96 of file LSQaips.h.

casacore::LSQaips::LSQaips ( uInt  nUnknowns,
const LSQComplex ,
uInt  nConstraints = 0 
)
inline

Definition at line 98 of file LSQaips.h.

casacore::LSQaips::LSQaips ( )
inline

Default constructor (empty, real, only usable after a set(nUnknowns))

Definition at line 103 of file LSQaips.h.

casacore::LSQaips::LSQaips ( const LSQaips other)
inline

Copy constructor (deep copy)

Definition at line 105 of file LSQaips.h.

casacore::LSQaips::~LSQaips ( )
inline

Definition at line 112 of file LSQaips.h.

Member Function Documentation

template<class U >
Bool casacore::LSQaips::getCovariance ( U *  covar)
inline

Get the covariance matrix.

False if an error occurred (of size nUnknowns * nUnknowns)

Definition at line 169 of file LSQaips.h.

References casacore::LSQFit::getCovariance().

template<class U >
Bool casacore::LSQaips::getCovariance ( std::complex< U > *  covar)
inline

Definition at line 172 of file LSQaips.h.

References casacore::LSQFit::getCovariance().

template<class U >
Bool casacore::LSQaips::getCovariance ( Array< U > &  covar)
template<class U >
Bool casacore::LSQaips::getErrors ( U *  errors)
inline

Get main diagonal of covariance function (of size nUnknowns)

Definition at line 180 of file LSQaips.h.

References casacore::LSQFit::getErrors().

template<class U >
Bool casacore::LSQaips::getErrors ( std::complex< U > *  errors)
inline

Definition at line 183 of file LSQaips.h.

References casacore::LSQFit::getErrors().

template<class U >
Bool casacore::LSQaips::getErrors ( U &  errors)
inline

Definition at line 186 of file LSQaips.h.

References casacore::LSQFit::getErrors().

template<class U >
Bool casacore::LSQaips::getErrors ( Vector< U > &  errors)
inline
LSQaips& casacore::LSQaips::operator= ( const LSQaips other)
inline

Assignment (deep copy)

Definition at line 107 of file LSQaips.h.

References casacore::LSQFit::operator=().

template<class U >
void casacore::LSQaips::solve ( U *  sol)
inline

Solve normal equations.

The solution will be given in sol.

Definition at line 121 of file LSQaips.h.

References casacore::LSQFit::solve().

template<class U >
void casacore::LSQaips::solve ( std::complex< U > *  sol)
inline

Definition at line 123 of file LSQaips.h.

References casacore::LSQFit::solve().

template<class U >
void casacore::LSQaips::solve ( U &  sol)
inline

Definition at line 125 of file LSQaips.h.

References casacore::LSQFit::solve().

template<class U >
void casacore::LSQaips::solve ( Vector< U > &  sol)
inline
template<class U >
Bool casacore::LSQaips::solveLoop ( uInt nRank,
U *  sol,
Bool  doSVD = False 
)
inline

Solve a Levenberg-Marquardt loop.

Note that the solution sol is used both and input and output. No check on the size is done.

Definition at line 135 of file LSQaips.h.

References casacore::LSQFit::solveLoop().

template<class U >
Bool casacore::LSQaips::solveLoop ( uInt nRank,
std::complex< U > *  sol,
Bool  doSVD = False 
)
inline

Definition at line 139 of file LSQaips.h.

References casacore::LSQFit::solveLoop().

template<class U >
Bool casacore::LSQaips::solveLoop ( uInt nRank,
U &  sol,
Bool  doSVD = False 
)
inline

Definition at line 143 of file LSQaips.h.

References casacore::LSQFit::solveLoop().

template<class U >
Bool casacore::LSQaips::solveLoop ( uInt nRank,
Vector< U > &  sol,
Bool  doSVD = False 
)
template<class U >
Bool casacore::LSQaips::solveLoop ( Double fit,
uInt nRank,
U *  sol,
Bool  doSVD = False 
)
inline

Definition at line 150 of file LSQaips.h.

References casacore::LSQFit::solveLoop().

template<class U >
Bool casacore::LSQaips::solveLoop ( Double fit,
uInt nRank,
std::complex< U > *  sol,
Bool  doSVD = False 
)
inline

Definition at line 154 of file LSQaips.h.

References casacore::LSQFit::solveLoop().

template<class U >
Bool casacore::LSQaips::solveLoop ( Double fit,
uInt nRank,
U &  sol,
Bool  doSVD = False 
)
inline

Definition at line 158 of file LSQaips.h.

References casacore::LSQFit::solveLoop().

template<class U >
Bool casacore::LSQaips::solveLoop ( Double fit,
uInt nRank,
Vector< U > &  sol,
Bool  doSVD = False 
)

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