Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

RazorBack::Nonlinreg_ Class Reference

Class Nonlinreg_: this class implements a general-purpose multivariate weighted nonlinear regression with Marquardt's method. More...

#include <Nonlinreg.hh>

Inheritance diagram for RazorBack::Nonlinreg_:

Inheritance graph
[legend]
Collaboration diagram for RazorBack::Nonlinreg_:

Collaboration graph
[legend]
List of all members.

Public Types

enum  Verbosity_ { SILENT, TERSE, VERBOSE }
 Verbosity_: controls std output during the iteration. More...


Public Methods

 Nonlinreg_ (size_t NX, size_t NY, size_t NP, size_t NM)
 Init to desired sizes if known in advance. More...

void report_level (Verbosity_ V)
 report_level(V): sets the verbosity level of the progress report.

double nonlin_reg (const Rmatdbl_ &Xmeas, const Rmatdbl_ &Ymeas, const Rmatdbl_ &Userwgt, const Vecdbl_ &Initpar, Nonlinfunc_ &Funcobj, int &Itmax, double Steplim=1e-6)
 nonlin_reg(Xmeas, Ymeas [,Userwgt], Initpar, Funcobj, Itmax, Steplim): Least-squares multiple nonlinear regression for the function Y=F(X, P) where Y is a Ny-dim. More...

double nonlin_reg (const Rmatdbl_ &Xmeas, const Rmatdbl_ &Ymeas, const Vecdbl_ &Initpar, Nonlinfunc_ &Funcobj, int &Itmax, double Steplim=1e-6)

Protected Methods

void adjust_dimensions (const Rmatdbl_ &Xmeas, const Rmatdbl_ &Ymeas, const Rmatdbl_ &Userwgt, const Vecdbl_ &Initpar, const Nonlinfunc_ &Funcobj)
void setup_weight (const Rmatdbl_ &YW)
double quality (const Rmatdbl_ &Xmeas, const Rmatdbl_ &Ymeas, const Vecdbl_ &Par, Nonlinfunc_ &Funcobj) const
void report (ostream &Out, int Itno, double Q, double Lambda, const Vecdbl_ &Par) const

Protected Attributes

size_t Nx
size_t Ny
 X and Y vector sizes.

Rmatdbl_ W
 weight matrix Nm x Ny.

Verbosity_ Verb
 progress report verbosity.


Detailed Description

Class Nonlinreg_: this class implements a general-purpose multivariate weighted nonlinear regression with Marquardt's method.

Definition at line 85 of file Nonlinreg.hh.


Member Enumeration Documentation

enum RazorBack::Nonlinreg_::Verbosity_
 

Verbosity_: controls std output during the iteration.

Enumeration values:
SILENT  
TERSE  
VERBOSE  

Definition at line 91 of file Nonlinreg.hh.


Constructor & Destructor Documentation

RazorBack::Nonlinreg_::Nonlinreg_ ( size_t NX,
size_t NY,
size_t NP,
size_t NM ) [inline]
 

Init to desired sizes if known in advance.

Actual regression calls adjust sizes automatically.

Definition at line 107 of file Nonlinreg.hh.


Member Function Documentation

void RazorBack::Nonlinreg_::report_level ( Verbosity_ V ) [inline]
 

report_level(V): sets the verbosity level of the progress report.

Definition at line 111 of file Nonlinreg.hh.

double RazorBack::Nonlinreg_::nonlin_reg ( const Rmatdbl_ & Xmeas,
const Rmatdbl_ & Ymeas,
const Rmatdbl_ & Userwgt,
const Vecdbl_ & Initpar,
Nonlinfunc_ & Funcobj,
int & Itmax,
double Steplim = 1e-6 )
 

nonlin_reg(Xmeas, Ymeas [,Userwgt], Initpar, Funcobj, Itmax, Steplim): Least-squares multiple nonlinear regression for the function Y=F(X, P) where Y is a Ny-dim.

vector, X is a Nx-dim vector, and P is a Np-dim. vector of parameters, F a nonlinear vector-vector function. Routine parameters:- Xmeas: Nm x Nx matrix of independent variables Ymeas: Nm x Ny matrix of dependent variables Userwgt: optional Nm x Ny matrix of weights can be omitted if equal or relative weights are used Initpar: Np-dim. vector of the initial parameter estimates Funcobj: a nonlinear function object (instance of class Nonlinfunc_) that can calculate F and the Jacobian dF/dP Itmax: on input, the maximal number of iterations, on output, the actual number of iterations Steplim: minimal stepsize (default 1e-6). Return value: the residual deviation.

double RazorBack::Nonlinreg_::nonlin_reg ( const Rmatdbl_ & Xmeas,
const Rmatdbl_ & Ymeas,
const Vecdbl_ & Initpar,
Nonlinfunc_ & Funcobj,
int & Itmax,
double Steplim = 1e-6 )
 

void RazorBack::Nonlinreg_::adjust_dimensions ( const Rmatdbl_ & Xmeas,
const Rmatdbl_ & Ymeas,
const Rmatdbl_ & Userwgt,
const Vecdbl_ & Initpar,
const Nonlinfunc_ & Funcobj ) [protected]
 

void RazorBack::Nonlinreg_::setup_weight ( const Rmatdbl_ & YW ) [protected]
 

double RazorBack::Nonlinreg_::quality ( const Rmatdbl_ & Xmeas,
const Rmatdbl_ & Ymeas,
const Vecdbl_ & Par,
Nonlinfunc_ & Funcobj ) const [protected]
 

void RazorBack::Nonlinreg_::report ( ostream & Out,
int Itno,
double Q,
double Lambda,
const Vecdbl_ & Par ) const [protected]
 


Member Data Documentation

size_t RazorBack::Nonlinreg_::Nx [protected]
 

Definition at line 96 of file Nonlinreg.hh.

size_t RazorBack::Nonlinreg_::Ny [protected]
 

X and Y vector sizes.

Definition at line 96 of file Nonlinreg.hh.

Rmatdbl_ RazorBack::Nonlinreg_::W [protected]
 

weight matrix Nm x Ny.

Definition at line 97 of file Nonlinreg.hh.

Verbosity_ RazorBack::Nonlinreg_::Verb [protected]
 

progress report verbosity.

Definition at line 98 of file Nonlinreg.hh.


The documentation for this class was generated from the following file:
Generated at Wed Aug 21 09:33:17 2002 for The Razorback C++ Library: Statistics by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001