Basic Image AlgorithmS Library  2.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
BIAS::GaussHelmert Class Referenceabstract

see Foerstner, 2004, "Uncertainty And Projective Geometry" ! untested ! More...

#include <MathAlgo/GaussHelmert.hh>

+ Inheritance diagram for BIAS::GaussHelmert:
+ Collaboration diagram for BIAS::GaussHelmert:

Public Member Functions

void AddDebugLevel (const long int lv)
 
void AddDebugLevel (const std::string &name)
 
bool DebugLevelIsSet (const long int lv) const
 
bool DebugLevelIsSet (const std::string &name) const
 
int GetDebugLevel () const
 
std::ostream & GetDebugStream () const
 
void GetDebugStream (std::ostream &os) const
 
long int Name2DebugLevel (const std::string &name) const
 looks up a debuglevel in the internal map, returns 0 if not found More...
 
long int NewDebugLevel (const std::string &name)
 creates a new debuglevel More...
 
void PrintDebugLevel (std::ostream &os=std::cout) const
 
void RemoveDebugLevel (const long int lv)
 
void RemoveDebugLevel (const std::string &name)
 
void SetDebugLevel (const long int lv)
 
void SetDebugLevel (const std::string &name)
 
void SetDebugStream (const std::ostream &os)
 
void ShowDebugLevel (std::ostream &os=std::cout) const
 prints all internally known debuglevels More...
 
int Solve (BIAS::Vector< double > &observations, const BIAS::Matrix< double > &obs_cov, BIAS::Vector< double > &x, BIAS::Matrix< double > &cov)
 
virtual ~GaussHelmert ()
 

Static Public Member Functions

static long int GetGlobalDebugLevel ()
 
static void SetGlobalDebugLevel (long int lev)
 

Protected Member Functions

void ComputeNormalSystem_ (const Matrix< double > &A, const Matrix< double > &B, const Matrix< double > &H, const Matrix< double > &Sigma_ll, const Vector< double > &x_hat, const Vector< double > &l_hat, const Vector< double > &v_hat, Matrix< double > &normal_matrix, Vector< double > &normal_vector)
 
long ConsumeNextFreeDebuglevel_ ()
 returns the next available debuglevel More...
 
virtual Vector< double > & g_ (const Vector< double > &l, const Vector< double > &x)=0
 joint constraints on obseravtions and unknowns More...
 
 GaussHelmert ()
 protected constructor to prohibit instantiation of class More...
 
virtual Matrix< double > & GetA_ (const Vector< double > &l, const Vector< double > &x)=0
 jacobian of g_() with respect to x at x, l More...
 
virtual Matrix< double > & GetB_ (const Vector< double > &l, const Vector< double > &x)=0
 transposed of jacobian of g_() with respect to l at x, l More...
 
virtual Matrix< double > & GetH_ (const Vector< double > &x)=0
 transposed of jacobian of h_() with respect to x at x More...
 
virtual Vector< double > & h_ (const Vector< double > &x)=0
 constraints on the unknowns More...
 

Protected Attributes

long int _liDebugLevel
 
long int _liNextDebugLevel
 new concept, debuglevel are managed here in the debug class More...
 
std::map< std::string, long int > _String2Debuglevel
 
int MaxNumIter_
 
double Precision_
 

Static Protected Attributes

static std::ostream _zDebugStream
 
static long int GlobalDebugLevel = 0
 

Detailed Description

see Foerstner, 2004, "Uncertainty And Projective Geometry" ! untested !

Author
woelk 04/2006

Definition at line 25 of file GaussHelmert.hh.

Constructor & Destructor Documentation

BIAS::GaussHelmert::~GaussHelmert ( )
virtual

Definition at line 17 of file GaussHelmert.cpp.

BIAS::GaussHelmert::GaussHelmert ( )
protected

protected constructor to prohibit instantiation of class

Definition at line 12 of file GaussHelmert.cpp.

Member Function Documentation

void BIAS::Debug::AddDebugLevel ( const long int  lv)
inlineinherited
void BIAS::Debug::AddDebugLevel ( const std::string &  name)
inlineinherited

Definition at line 362 of file Debug.hh.

void BIAS::GaussHelmert::ComputeNormalSystem_ ( const Matrix< double > &  A,
const Matrix< double > &  B,
const Matrix< double > &  H,
const Matrix< double > &  Sigma_ll,
const Vector< double > &  x_hat,
const Vector< double > &  l_hat,
const Vector< double > &  v_hat,
Matrix< double > &  normal_matrix,
Vector< double > &  normal_vector 
)
protected
long BIAS::Debug::ConsumeNextFreeDebuglevel_ ( )
inlineprotectedinherited

returns the next available debuglevel

Author
woelk 09/2006

Definition at line 521 of file Debug.hh.

bool BIAS::Debug::DebugLevelIsSet ( const long int  lv) const
inlineinherited
bool BIAS::Debug::DebugLevelIsSet ( const std::string &  name) const
inlineinherited

Definition at line 350 of file Debug.hh.

virtual Vector<double>& BIAS::GaussHelmert::g_ ( const Vector< double > &  l,
const Vector< double > &  x 
)
protectedpure virtual

joint constraints on obseravtions and unknowns

virtual Matrix<double>& BIAS::GaussHelmert::GetA_ ( const Vector< double > &  l,
const Vector< double > &  x 
)
protectedpure virtual

jacobian of g_() with respect to x at x, l

virtual Matrix<double>& BIAS::GaussHelmert::GetB_ ( const Vector< double > &  l,
const Vector< double > &  x 
)
protectedpure virtual

transposed of jacobian of g_() with respect to l at x, l

int BIAS::Debug::GetDebugLevel ( ) const
inlineinherited
std::ostream& BIAS::Debug::GetDebugStream ( ) const
inlineinherited

Definition at line 405 of file Debug.hh.

void BIAS::Debug::GetDebugStream ( std::ostream &  os) const
inlineinherited

Definition at line 414 of file Debug.hh.

static long int BIAS::Debug::GetGlobalDebugLevel ( )
inlinestaticinherited

Definition at line 431 of file Debug.hh.

virtual Matrix<double>& BIAS::GaussHelmert::GetH_ ( const Vector< double > &  x)
protectedpure virtual

transposed of jacobian of h_() with respect to x at x

virtual Vector<double>& BIAS::GaussHelmert::h_ ( const Vector< double > &  x)
protectedpure virtual

constraints on the unknowns

long int BIAS::Debug::Name2DebugLevel ( const std::string &  name) const
inlineinherited

looks up a debuglevel in the internal map, returns 0 if not found

Author
woelk 09/2006

Definition at line 454 of file Debug.hh.

long int BIAS::Debug::NewDebugLevel ( const std::string &  name)
inlineinherited
void BIAS::Debug::PrintDebugLevel ( std::ostream &  os = std::cout) const
inlineinherited

Definition at line 383 of file Debug.hh.

void BIAS::Debug::RemoveDebugLevel ( const long int  lv)
inlineinherited

Definition at line 369 of file Debug.hh.

void BIAS::Debug::RemoveDebugLevel ( const std::string &  name)
inlineinherited

Definition at line 376 of file Debug.hh.

void BIAS::Debug::SetDebugLevel ( const long int  lv)
inlineinherited
void BIAS::Debug::SetDebugLevel ( const std::string &  name)
inlineinherited

Definition at line 325 of file Debug.hh.

void BIAS::Debug::SetDebugStream ( const std::ostream &  os)
inlineinherited

Definition at line 398 of file Debug.hh.

static void BIAS::Debug::SetGlobalDebugLevel ( long int  lev)
inlinestaticinherited

Definition at line 424 of file Debug.hh.

void BIAS::Debug::ShowDebugLevel ( std::ostream &  os = std::cout) const
inlineinherited

prints all internally known debuglevels

Author
woelk 09/2006

Definition at line 496 of file Debug.hh.

int BIAS::GaussHelmert::Solve ( BIAS::Vector< double > &  observations,
const BIAS::Matrix< double > &  obs_cov,
BIAS::Vector< double > &  x,
BIAS::Matrix< double > &  cov 
)

Member Data Documentation

long int BIAS::Debug::_liDebugLevel
protectedinherited

Definition at line 510 of file Debug.hh.

Referenced by BIAS::Debug::operator=(), and BIAS::ImageBase::operator=().

long int BIAS::Debug::_liNextDebugLevel
protectedinherited

new concept, debuglevel are managed here in the debug class

Definition at line 516 of file Debug.hh.

Referenced by BIAS::Debug::operator=().

std::map<std::string, long int> BIAS::Debug::_String2Debuglevel
protectedinherited

Definition at line 517 of file Debug.hh.

Referenced by BIAS::Debug::operator=().

std::ostream BIAS::Debug::_zDebugStream
staticprotectedinherited

Definition at line 511 of file Debug.hh.

Referenced by BIAS::Debug::operator=().

long int BIAS::Debug::GlobalDebugLevel = 0
staticprotectedinherited

Definition at line 513 of file Debug.hh.

int BIAS::GaussHelmert::MaxNumIter_
protected

Definition at line 39 of file GaussHelmert.hh.

double BIAS::GaussHelmert::Precision_
protected

Definition at line 40 of file GaussHelmert.hh.


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